2023年6月20日发(作者:)

Java习题练习

一、填空题(共18分)

1、 是唯一标志一个变量、方法和类等的名字。

2、布尔类型变量的值只有两种值,其值为 和 。

3、Java支持两种分支语句,分别是 和 。

4、如果程序中的语句是以重复性语句来做程序的结构称为 ,也叫重复结构。

5、if语句是选择结构中最基本的语句,它有两种基本形式: 与 语句。

6、对于字符串String s1=new String("ok");string s2=new String("ok"); 表达式s1==s2的值是 ,(s2)的值是

7、创建字符串对象a的两种方式 和 。

8、设String对象s= “Hello ”,运行语句n((“World!”));后String对象s的内容为_______ ____,所以语句输出为_____ ___。

9、面向对象程序设计的主要特点是 、 和 。

10、Java中类成员的限定词有以下几种:private、 public、 friendly、protected其中, 的限定的范围最大。

11、标识符是区分 的,可以为任意长度(unlimited-length),但一般来说,长度适中即可。

12、byte类型数据占 位空间,short类型数据占 位空间,int类型数据占 位空间,long类型数据占 位空间。

13、Java支持三种循环语句,分别是 , , 。

14、语法格式中的“布尔表达式”为关系表达式或逻辑表达式,其值类型为 。

15、 首先执行循环体,然后再判断循环条件。

二、单项选择题(共30分)

1、语法错误由( )发现的。

A、JRE B、编译程序 C、命令提示符 D、应用程序

2、Java的源代码文件具有( )的扩展名。

A、class B 、java C 、javac D 、source

3、语法错误可因多种原因产生,例如,当( )

A、应用程序突然中止 B、缺少括号 C、单词拼写错误 D、选择B和C

4、 应用程序中的语句按照它们所缩写的次序逐条的执行过程被称为( )

A、控制转移 B、顺序执行 C、工作流程 D、以上均不对

5、将一个if…else 语句放置在另一个if…else语句的内部,属于( )的一个例子

A、 嵌套if…else语句 B、 堆积if…else语句

C、 创建顺序的if…else语句 D、 以上答案都不对

6、以下的描述中,正确的是( )

A、continue语句的作用是结束整个循环的执行

B、只能在循环体内和switch语句体内使用break语句

C、在循环体内使用break语句或continue语句的作用相同

D、从多层循环嵌套中退出时,只能使用goto语句

7、 String str = new String("abc") 此代码中有几个对象( )

A、1个 B、 2个 C、3个 D、 4个

8、如何将字符串转换为数值?( ) A、利用字符串对象的toString函数将字符串转换为数值

B、利用数值类的parseInt,parseDouble等函数将字符串直接转换为数值

C、利用数值类的静态函数valueOf将字符串转换为数值

D、利用数值类的静态函数intValue将字符串转换为数值

9、Math.( )方法可返对某数求幂后的结果

A、 power B、 exponent C、exp D 、 pow

10、方法内定义的变量:( )

A 、一定在方法内所有位置可见 B、 可能在方法内的局部位置可见

C、 在方法外可以使用 D、 在方法外可见

11、void 的含义:( )

A、方法体为空 B、方法体没有意义

C、定义方法时必须使用 D、方法没有返回值

12、方法重载所涉及的方法:( )

A、有相同的名字 B、参数个数必须不同

C、参数类型必须不同 D、返回类型必须不同

13、下面关于类和对象之间关系的描述,正确的是( )

A、联接关系 B、包含关系

C、具体与抽象的关系 D、类是对象的具体化

14、Thead类定义于下列哪一个包中?( )

A、 B 、 C、 D、

15、阅读下面编程题

public class Test 2 {

public static void main(String args[]){

Thread t=new test2();

();}

public void run(){

n("How are you");}

}

在程序下画线处填入正确选项是 ( )

A、implements Thread B、extends Runnable

C、implements Runnable D、extends Thread

16、java运行环境只可以识别出( )文件。

A、java B、 jre C 、exe D、 class

17、拥有扩展名为 ( )的文件可以存储程序员所编写的Java源代码。A、 java B、 class C、 exe D、 jre

18、在查找到应用程序的一个语法错误以后,编译程序将给用户通告此错误(A、出现的行号 B、可用于改正错误的正确代码

C、一个简短的描述 D、选择A和B

19、if….else 是一个( )的选择语句

A、 单向 B、 双向 C 、三向 D 、嵌套

20、能从循环语句的循环体中跳出的语句是( )

A、if语句 B、break语句 C、for语句 D、continue语句

三、判断题(共10分)

) 1、Java 程序中都含有 main 方法,因为它是所有 Java 程序执行的入口。 ( )

2、Java 程序源文件名应该与主类名保持一致。( )

3、字符串中的索引从0开始 ( )

4、Java中的String类的对象既可以是字符串常量,也可以是字符串变量。( )

5、方法 replace (String srt1, String srt2)将当前字符串中所有 srt1 子串换成 srt2子串。( )

6、方法 IndexOf((char ch,-1)返回字符 ch 在字符串中最后一次出现的位置。( )

7、一个类中,只能拥有一个构造器方法。( )

8 可以在子类构造函数中通过this关键字调用基类的构造函数。 ( )

9、一个接口不可以继承其他接口。( )

10、抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。( )

11、Java 程序可以运行在任何操作系统上,只要有对应操作系统的虚拟机。( )

12、“//”即可以表示单行注释,也可以表示多行注释。( )

13、连接字符子串,当前字符串本身不改变( )

14、用“+”可以实现字符串的拼接,用“-” 可以从一个字符串中去除一个字符子串。( )

15、用运算符“==”比较字符串对象时,只要两个字符串包含的是同一个值,结果便为 true。

( )

简答题(共10分)

1、AWT组件大致可以分为那三类、

2、什么是事件?

3、Java Swing GUI应用程序的开发过程有那些?

程序分析题(共20分)

1、写出下面程序的输出结果

import ownLatch;

publicclass TestCountDownLatch {

publicstaticvoid execute() throws InterruptedException {

finalint n = 3;

final CountDownLatch start = new CountDownLatch(1);

final CountDownLatch end = new CountDownLatch(n);

("A");

Thread t = new Thread() {

publicvoid run() {

for (int i = 0; i < n; i++) {

try {

();// 此处填空

("B");

} catch (Exception e) {

} finally {

own();// 此处填空

} } }

};

();

("C"); own();

();

("D");

}

publicstaticvoid main(String[] args) throws InterruptedException {

execute();

} }

该程序的运行结果为:

2、阅读以下程序,请写出该程序的输出结果。

class CurrentThreadDemo {

public static void main(String args[]) {

Thread t = new Thread(); n("Current thread");

e("My Thread"); n("After name change");

try {for(int n = 3; n > 0; n--) {

n(n); (1000);

}

} catch (InterruptedException e) {

n("Main thread interrupted");

} } }

该程序的运行结果为:

3、阅读下面代码,写出运行结果。

public class TestException{

public TestException(){}

boolean testEx() throws Exception{

boolean ret = true;

try{

ret = testEx1();

}

catch (Exception e){

n("testEx, catch exception");

ret = false;

throw e;

}

finally{

n("testEx, finally; return value=" + ret);

return ret;

}

}

boolean testEx1() throws Exception{

boolean ret = true;

try{

ret = testEx2();

if (!ret){

return false; }

n("testEx1, at the end of try");

return ret;

}

catch (Exception e){

n("testEx1, catch exception");

ret = false;

throw e;

}

finally{

n("testEx1, finally; return value=" + ret);

return ret;

}

}

boolean testEx2() throws Exception{

boolean ret = true;

try{

int b = 12;

int c;

for (int i = 2; i >= -2; i--){

c = b / i;

n("i=" + i);

}

return true;

}

catch (Exception e){

n("testEx2, catch exception");

ret = false;

throw e;

}

finally{

n("testEx2, finally; return value=" + ret);

return ret;

}

}

public static void main(String[] args){

TestException testException1 = new TestException();

try{

();

}

catch (Exception e){

tackTrace();

}

} }

编程题(共12分)

2023年6月20日发(作者:)

Java习题练习

一、填空题(共18分)

1、 是唯一标志一个变量、方法和类等的名字。

2、布尔类型变量的值只有两种值,其值为 和 。

3、Java支持两种分支语句,分别是 和 。

4、如果程序中的语句是以重复性语句来做程序的结构称为 ,也叫重复结构。

5、if语句是选择结构中最基本的语句,它有两种基本形式: 与 语句。

6、对于字符串String s1=new String("ok");string s2=new String("ok"); 表达式s1==s2的值是 ,(s2)的值是

7、创建字符串对象a的两种方式 和 。

8、设String对象s= “Hello ”,运行语句n((“World!”));后String对象s的内容为_______ ____,所以语句输出为_____ ___。

9、面向对象程序设计的主要特点是 、 和 。

10、Java中类成员的限定词有以下几种:private、 public、 friendly、protected其中, 的限定的范围最大。

11、标识符是区分 的,可以为任意长度(unlimited-length),但一般来说,长度适中即可。

12、byte类型数据占 位空间,short类型数据占 位空间,int类型数据占 位空间,long类型数据占 位空间。

13、Java支持三种循环语句,分别是 , , 。

14、语法格式中的“布尔表达式”为关系表达式或逻辑表达式,其值类型为 。

15、 首先执行循环体,然后再判断循环条件。

二、单项选择题(共30分)

1、语法错误由( )发现的。

A、JRE B、编译程序 C、命令提示符 D、应用程序

2、Java的源代码文件具有( )的扩展名。

A、class B 、java C 、javac D 、source

3、语法错误可因多种原因产生,例如,当( )

A、应用程序突然中止 B、缺少括号 C、单词拼写错误 D、选择B和C

4、 应用程序中的语句按照它们所缩写的次序逐条的执行过程被称为( )

A、控制转移 B、顺序执行 C、工作流程 D、以上均不对

5、将一个if…else 语句放置在另一个if…else语句的内部,属于( )的一个例子

A、 嵌套if…else语句 B、 堆积if…else语句

C、 创建顺序的if…else语句 D、 以上答案都不对

6、以下的描述中,正确的是( )

A、continue语句的作用是结束整个循环的执行

B、只能在循环体内和switch语句体内使用break语句

C、在循环体内使用break语句或continue语句的作用相同

D、从多层循环嵌套中退出时,只能使用goto语句

7、 String str = new String("abc") 此代码中有几个对象( )

A、1个 B、 2个 C、3个 D、 4个

8、如何将字符串转换为数值?( ) A、利用字符串对象的toString函数将字符串转换为数值

B、利用数值类的parseInt,parseDouble等函数将字符串直接转换为数值

C、利用数值类的静态函数valueOf将字符串转换为数值

D、利用数值类的静态函数intValue将字符串转换为数值

9、Math.( )方法可返对某数求幂后的结果

A、 power B、 exponent C、exp D 、 pow

10、方法内定义的变量:( )

A 、一定在方法内所有位置可见 B、 可能在方法内的局部位置可见

C、 在方法外可以使用 D、 在方法外可见

11、void 的含义:( )

A、方法体为空 B、方法体没有意义

C、定义方法时必须使用 D、方法没有返回值

12、方法重载所涉及的方法:( )

A、有相同的名字 B、参数个数必须不同

C、参数类型必须不同 D、返回类型必须不同

13、下面关于类和对象之间关系的描述,正确的是( )

A、联接关系 B、包含关系

C、具体与抽象的关系 D、类是对象的具体化

14、Thead类定义于下列哪一个包中?( )

A、 B 、 C、 D、

15、阅读下面编程题

public class Test 2 {

public static void main(String args[]){

Thread t=new test2();

();}

public void run(){

n("How are you");}

}

在程序下画线处填入正确选项是 ( )

A、implements Thread B、extends Runnable

C、implements Runnable D、extends Thread

16、java运行环境只可以识别出( )文件。

A、java B、 jre C 、exe D、 class

17、拥有扩展名为 ( )的文件可以存储程序员所编写的Java源代码。A、 java B、 class C、 exe D、 jre

18、在查找到应用程序的一个语法错误以后,编译程序将给用户通告此错误(A、出现的行号 B、可用于改正错误的正确代码

C、一个简短的描述 D、选择A和B

19、if….else 是一个( )的选择语句

A、 单向 B、 双向 C 、三向 D 、嵌套

20、能从循环语句的循环体中跳出的语句是( )

A、if语句 B、break语句 C、for语句 D、continue语句

三、判断题(共10分)

) 1、Java 程序中都含有 main 方法,因为它是所有 Java 程序执行的入口。 ( )

2、Java 程序源文件名应该与主类名保持一致。( )

3、字符串中的索引从0开始 ( )

4、Java中的String类的对象既可以是字符串常量,也可以是字符串变量。( )

5、方法 replace (String srt1, String srt2)将当前字符串中所有 srt1 子串换成 srt2子串。( )

6、方法 IndexOf((char ch,-1)返回字符 ch 在字符串中最后一次出现的位置。( )

7、一个类中,只能拥有一个构造器方法。( )

8 可以在子类构造函数中通过this关键字调用基类的构造函数。 ( )

9、一个接口不可以继承其他接口。( )

10、抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。( )

11、Java 程序可以运行在任何操作系统上,只要有对应操作系统的虚拟机。( )

12、“//”即可以表示单行注释,也可以表示多行注释。( )

13、连接字符子串,当前字符串本身不改变( )

14、用“+”可以实现字符串的拼接,用“-” 可以从一个字符串中去除一个字符子串。( )

15、用运算符“==”比较字符串对象时,只要两个字符串包含的是同一个值,结果便为 true。

( )

简答题(共10分)

1、AWT组件大致可以分为那三类、

2、什么是事件?

3、Java Swing GUI应用程序的开发过程有那些?

程序分析题(共20分)

1、写出下面程序的输出结果

import ownLatch;

publicclass TestCountDownLatch {

publicstaticvoid execute() throws InterruptedException {

finalint n = 3;

final CountDownLatch start = new CountDownLatch(1);

final CountDownLatch end = new CountDownLatch(n);

("A");

Thread t = new Thread() {

publicvoid run() {

for (int i = 0; i < n; i++) {

try {

();// 此处填空

("B");

} catch (Exception e) {

} finally {

own();// 此处填空

} } }

};

();

("C"); own();

();

("D");

}

publicstaticvoid main(String[] args) throws InterruptedException {

execute();

} }

该程序的运行结果为:

2、阅读以下程序,请写出该程序的输出结果。

class CurrentThreadDemo {

public static void main(String args[]) {

Thread t = new Thread(); n("Current thread");

e("My Thread"); n("After name change");

try {for(int n = 3; n > 0; n--) {

n(n); (1000);

}

} catch (InterruptedException e) {

n("Main thread interrupted");

} } }

该程序的运行结果为:

3、阅读下面代码,写出运行结果。

public class TestException{

public TestException(){}

boolean testEx() throws Exception{

boolean ret = true;

try{

ret = testEx1();

}

catch (Exception e){

n("testEx, catch exception");

ret = false;

throw e;

}

finally{

n("testEx, finally; return value=" + ret);

return ret;

}

}

boolean testEx1() throws Exception{

boolean ret = true;

try{

ret = testEx2();

if (!ret){

return false; }

n("testEx1, at the end of try");

return ret;

}

catch (Exception e){

n("testEx1, catch exception");

ret = false;

throw e;

}

finally{

n("testEx1, finally; return value=" + ret);

return ret;

}

}

boolean testEx2() throws Exception{

boolean ret = true;

try{

int b = 12;

int c;

for (int i = 2; i >= -2; i--){

c = b / i;

n("i=" + i);

}

return true;

}

catch (Exception e){

n("testEx2, catch exception");

ret = false;

throw e;

}

finally{

n("testEx2, finally; return value=" + ret);

return ret;

}

}

public static void main(String[] args){

TestException testException1 = new TestException();

try{

();

}

catch (Exception e){

tackTrace();

}

} }

编程题(共12分)