您好,欢迎来到意榕旅游网。
搜索
您的当前位置:首页《Java语言程序设计基础教程》习题解答

《Java语言程序设计基础教程》习题解答

来源:意榕旅游网
《Java语言程序设计基础教程》习题解答

《Java语言程序设计基础教程》 练习思考题参 第1章 Java程序设计概述

1.9 练习思考题

1、ﻩJava运行平台包括三个版本,请选择正确的三项:( A. J2EE ﻩﻩﻩﻩ ﻩB. J2ME

C. J2SE ﻩ D. J2E

解答:A,B,C

2、 Java JDK中反编译工具是:( )

A. javac ﻩ ﻩ B. java

ﻩC. jdb ﻩﻩ ﻩD. javap

)

《Java语言程序设计基础教程》习题解答

解答:D

3、ﻩpublic static void main方法的参数描述是:( )

A. String args[]ﻩﻩﻩ B. String[] args

C. Strings args[] ﻩ ﻩD. String args

解答:A,B

4、 在Java中,关于CLASSPATH环境变量的说法不正确的是:( )

A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。

B. 编译器用它来搜索各自的类文件。

C. CLASSPATH是一个目录列表。

D. 解释器用它来搜索各自的类文件。

解答:A

5、 编译Java Application源文件将产生相应的字节码文件,扩展名为( )

《Java语言程序设计基础教程》习题解答

ﻩA. .javaﻩﻩﻩ ﻩﻩﻩB. .class

C. .html ﻩ ﻩ D. .exe

解答:B

6、 开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。

7、 如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。

8、 如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器 编译该源程序文件将产生______个文件名与类名相同而扩展名为______的字节码文件。

9、 开发与运行Java程序需要经过哪些主要步骤和过程?

10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的?

11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。

《Java语言程序设计基础教程》习题解答

第2章 Java基本的程序设计结构

2.7练习思考题

1、 从下面选项中,选择三个有效的标示符:( )

A. IDoLikeTheLongNameClass C. const ﻩﻩ ﻩﻩﻩD. _ok

E. 3_case

解答:A,B,D

2、 下面哪一项在java中是非法的标识符?( A. $user ﻩ ﻩ

B. point

C. You&me

D. _endline

B. $byte

《Java语言程序设计基础教程》习题解答

解答:C

3、 下列不属于Java保留字的是:( )

A. sizeof

B. super

C. abstract

D. break

解答:A

4、 下面哪些java语句会导致无限循环?( I、 while (true) i = 0;

II、 while (false) i = 1;

III、ﻩwhile (!false) i = 0;

A、仅仅III

)《Java语言程序设计基础教程》习题解答

B、I 和III

C、仅仅I

D、I, II 和III

解答:B

5、 下列整型数据类型中,需要内存空间最少的是A. short ﻩ ﻩB. long

C. int ﻩD. byte

解答:D

6、 下面代码执行后,正确的输出结果是:( )

public class Example {

public static void main(String args[]) {

int l = 0;

)。

(《Java语言程序设计基础教程》习题解答

do {

ﻩ System.out.println(\"Doing it for l is:\" + l);

ﻩ} while (--l > 0);

System.out.println("Finish\");

ﻩ}

}

A. Doing it for l is 3

B. Doing it for l is 1

C. Doing it for l is 2

D. Doing it for l is 0

E. Doing it for l is ?C1

F. Finish

《Java语言程序设计基础教程》习题解答

解答:D,F

7、 若有定义 int a=1,b=2; 那么表达式(a++)+(++b) 的值是:( )

A. 3 ﻩﻩ B. 4

C. 5 ﻩD. 6

解答:B

8、 若有定义 int a=9,b=6; 那么a>b的值是:( )

A. 0ﻩﻩﻩﻩ ﻩB. 1

C. falseﻩﻩ ﻩD. true

解答:D

9、 假定有变量定义: int k=7,x=12; 那么能使值为3的表达式是:( A. x%=(k%=5)ﻩ B. x%=(k-k%5)

C. x%=k-k%5ﻩﻩﻩ D. (x%=k)-(k%=5)

《Java语言程序设计基础教程》习题解答

解答:D

10、执行完以下代码int[ ] x = new int[25];后,以下说明正确的是:( )

A. x[24]为0 ﻩﻩﻩ B. x[24]未定义 ﻩ

C. x[25]为0 ﻩ ﻩﻩD. x[0]为空

解答:A

11、Java应用程序的main方法中有以下语句,则输出的结果是( int[] x={2,3,-8,7,9};

int max=x[0];

for(int i=1;i<x.length;i++){

if(x[i]>max)

max=x[i];

}

)《Java语言程序设计基础教程》习题解答

System.out.println(max);

A. 2 ﻩﻩ ﻩ B. -8ﻩ

C. 7ﻩﻩﻩﻩ D. 9

解答:D

12、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( )

A. 3ﻩ ﻩﻩﻩB. 3.5

C. 4ﻩ ﻩﻩ D. 5

解答:A

13、有整型数组:int[] x={2,33,88,5,10};,则调用方法 Arrays.sort(x) 后,数组x中的元素值依次是?( )

A. 8810ﻩ33ﻩ 5ﻩ2

B. 2 5ﻩ10ﻩ338ﻩ8

《Java语言程序设计基础教程》习题解答

ﻩC. 881ﻩ0 2 33 5

ﻩD. 5ﻩ3388ﻩ10ﻩ2ﻩ

ﻩ解答:B

14、下列语句有错误的是:( )

A. int []a; ﻩ B. int []b=new int[10];

C. int c[]=new int[]; ﻩD. int d[]=null;

ﻩ解答:C

15、下列语句有错误的是:( )

A. int a[][]=new int[5][5]; ﻩB. int [][]b=new int[5][5];

C. int []c[]=new int[5][5]; ﻩD. int [][]d=new int[5,5];

解答:D

16、关于下面的程序,正确的结论是______。

《Java语言程序设计基础教程》习题解答

public class ex4_7{

public static void main(String args[]){

int a[]=new int[5];

boolean b[]=new boolean[5];

System.out.print(a[1]);

System.out.println(b[2]);

}

}

A. 运行结果为0false ﻩﻩB. 运行结果为1true

C. 程序无法通过编译 ﻩD. 可以通过编译但结果不确定

解答:A

17、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用______

《Java语言程序设计基础教程》习题解答

字节内存空间,这样,无论是中文字符还是英文字符,都是占用______字节内存空间。

18、设 x = 2 ,则表达式 ( x + + )/3 的值是______。

19、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为______和______。

20、设有数组定义:

int MyIntArray[] = { 10, 20, 30, 40, 50, 60, 70 };

则执行以下几个语句后的输出结果是: 。

ﻩint MyIntArray[] = { 10, 20, 30, 40, 50, 60, 70 };

ﻩint s = 0;

ﻩfor (int i = 0; i < MyIntArray.length; i++)

ﻩ if (i % 2 == 1)

ﻩ ﻩs += MyIntArray[i];

ﻩSystem.out.println(s);

《Java语言程序设计基础教程》习题解答

21、数组对象的长度在数组对象创建之后,就______改变。数组元素的下标总是从______开始。

22、对于数组int[][]t={{1,2,3},{4,5,6}}来说,t.length等于______,t[0].length等于______。

23、已知数组a的定义为“int a[]={1,2,3,4,5};”,则a[2]=______,数组b的定义为“int b[]=new int[5];”,则b[2]=______,数组c的定义为“Object []c=new Object[5];”,则c[2]=______。

24、调用数组元素时,用______和______来唯一确定数组中的元素。

25、什么是数组?数组有哪些特点?Java中创建数组需要哪些步骤?如何访问数组的第一个元素?

26、编程计算10~20的整数的平方值,将结果保存在一个数组中。

27、编写一个程序使之从键盘读入10个整数存入整型数组a中,然后逆序输出这10个整数。

28、某人有5张3分和4张5分的邮票,请编写一个程序,计算由这些邮票中的1张或若干张可以得到多少种不同的邮资。

《Java语言程序设计基础教程》习题解答

29、分析写出下列程序完成的功能。

public class sun {

public static void main(String args[]) {

double sum = 0.0;

for (int i = 1; i <= 100; i++)

ﻩ sum += 1.0 / (double) i;

ﻩSystem.out.println("sum=\" + sum);

ﻩ}

}

30、编写一个字符界面的Java Application程序,接受用户输入的10个整数,并输出这10个整数的最大值和最小值。

31、如果我国经济以每年10%的速度保持稳定增长,请编写一个程序,计算每年达到多少,多少年可以实现总量翻两番。

《Java语言程序设计基础教程》习题解答

class exA4_1{

public static void main(String args[]){

int a=0;

double i=0.10,sum=1;

while(sum<=4){

sum=(i+1)*sum;

a++;

System.out.println("第\"+a+\"年达到\"+sum);

}

System.out.println(\"需要\"+a+\"年实现两番");

}

}

《Java语言程序设计基础教程》习题解答

第3章 类和对象

3.9 练习思考题

1、 下列关于变量的叙述哪个是错的?( )

A. 实例变量是类的成员变量。

B. 在方法中定义的局部变量在该方法被执行时创建。

C. 实例变量用关键字static声明。

D. 局部变量在使用前必须被初始化。

解答:C

2、 在Java语言中,下列哪个包是编译器自动导入的?(A. java.applet ﻩﻩB. java.lang

C. java.ioﻩ ﻩ D. java.awt

解答:B

)《Java语言程序设计基础教程》习题解答

3、 当类的成员未用访问权限修饰符时,Java认为此成员的访问权限为( )。

ﻩﻩA. private ﻩ ﻩB. protected

C.friendly ﻩﻩﻩ D.public

解答:C

4、 下面哪个关键字不是用来控制对类成员的访问的?( A. public ﻩ B. protectedﻩ

C. default D. private

解答:C

5、 下面哪一个特性不是面向对象编程主要体现的( A. 封装性 ﻩﻩ B. 继承

C. 多态 ﻩ ﻩD. 类

解答:C

)《Java语言程序设计基础教程》习题解答

6、 不允许作为类及类成员的访问控制符的是( )。

A. public ﻩ B. private

C. staticﻩﻩ ﻩ D. protected

解答:C

7、 为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。

A、 static void method( ) ﻩB、 public void method( )

C、 final void method( ) ﻩ D、 abstract void method( )

解答:A

8、 可以在下面代码段point x处写入的是?( )

//point x

public class Interesting{

《Java语言程序设计基础教程》习题解答

//do something

}

A. String str;

B. static int PI=3.14;

C.ﻩpublic class MyClass{//do other thing…}

D.ﻩimport java.awt.*;

解答:D

9、 下列关于变量的叙述哪个是错的?( )

A、实例变量是类的成员变量。

B、在方法中定义的局部变量在该方法被执行时创建。

C、实例变量用关键字static声明。

D、局部变量在使用前必须被初始化。

《Java语言程序设计基础教程》习题解答

解答:C

10、下列哪个类声明是正确的?( )

A、abstract final class HI{}

B、abstract private move(){}

C、protected private number;

D、public abstract class Car{}

解答:D

11、已知A类被打包在packageA , B类被打包在packageB ,且B类被声明为public ,且有一个成员变量x被声明为protected控制方式 。C类也位于packageA包,且继承了B类 。则以下说法正确的是:( )

A、A类的实例不能访问到B类的实例

B、A类的实例能够访问到B类一个实例的x成员

C、C类的实例可以访问到B类一个实例的x成员

《Java语言程序设计基础教程》习题解答

D、C类的实例不能访问到B类的实例

解答:C

12、下列命题为真的是:( )

A、所有类都必须定义一个构造函数。

B、构造函数必须有返回值。

C、构造函数可以访问类的非静态成员。

D、构造函数必须初始化类的所有数据成员。

解答:C

13、在Java中,关于final关键字的说法正确的是(A、如果修饰变量,则一旦赋了值,就等同一个常量。

B、如果修饰类,则该类只能被一个子类继承。

C、如果修饰方法,则该方法不能在子类中被覆盖。

)

《Java语言程序设计基础教程》习题解答

D、如果修饰方法,则该方法所在的类不能被继承。

解答:A,C

14、在Java中,下面关于包的陈述中正确的是( )

A、包的声明必须是源文件的第一句代码。

B、包的声明必须紧跟在import语句的后面。

C、只有公共类才能放在包中。

D、可以将多个源文件中的类放在同一个包中。

解答:A,D

15、______方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。______方法是不能被当前类的子类重新定义的方法。

16、 什么叫方法的重载? 构造方法可以重载么?

17、 简述实例变量和类变量的区别。

《Java语言程序设计基础教程》习题解答

第4章 继承、接口和内部类

4.5 练习思考题

1、 Java中用于定义接口的关键字是( )

A、import ﻩB、package

C、class ﻩD、interface

解答:D

2、 以下关于abstract的说法,正确的是( )

A、abstract只能修饰类

B、abstract只能修饰方法

C、abstract类中必须有abstract方法

D、abstarct方法所在的类必须用abstract修饰

解答:D

《Java语言程序设计基础教程》习题解答

3、 下列哪种说法是正确的( )

A、私有方法不能被子类覆盖。

B、子类可以覆盖超类中的任何方法。

C、覆盖方法可以声明自己抛出的异常多于那个被覆盖的方法。

D、覆盖方法中的参数清单必须是被覆盖方法参数清单的子集。

解答:A

4、关于类继承的说法,正确的是( )

A、Java 类允许多重继承

B、Java接口允许多继承

C、接口和类都允许多继承

D、接口和类都不允许多继承

解答:B

《Java语言程序设计基础教程》习题解答

5、 关于抽象类,正确的是______。

A. 抽象类中不可以有非抽象方法

B. 某个非抽象类的父类是抽象类,则这个子类必须重载父类的所有抽象方法

C. 不能用抽象类去创建对象

D. 接口和抽象类是同一个概念

解答:B

6、 下列哪个类是由编译器自动生成对象的特殊类,是用于类操作?( A、Class类

B、Thread类

C、System类

D、Object类

解答:A

)

《Java语言程序设计基础教程》习题解答

7、 下面关于继承的哪些叙述是正确的。 ( )

A、在java中只允许单一继承。

B、在java中一个类只能实现一个接口。

C、在java中一个类不能同时继承一个类和实现一个接口。

D、java的单一继承使代码更可靠。

解答:A,D

8、 抽象类A和抽象类B的定义如下:

abstract class ex4_5_10_A {

abstract int getinfo();

}

public class ex4_5_10 extends ex4_5_10_A {

private int a = 0;

《Java语言程序设计基础教程》习题解答

ﻩpublic int getinfo() {

ﻩreturn a;

ﻩ}

ﻩpublic static void main(String args[]) {

ﻩex4_5_10 b = new ex4_5_10();

ﻩﻩSystem.out.println(b.getinfo());

ﻩ}

}

关于上述代码说明正确的是( )。

A. 输出结果为0 ﻩ B.通过编译但没有输出任何结果

C. 第5行不能通过编译 ﻩD. 程序第2行不能通过编译

解答:A

《Java语言程序设计基础教程》习题解答

9、ﻩ下面程序的运行结果是______

class ex4_5_11_A {

protected static int count = 0;

ﻩpublic ex4_5_11_A() {

count++;

ﻩ}

}

class ex4_5_11_B extends ex4_5_11_A ﻩpublic ex4_5_11_B() {

ﻩﻩcount++;

ﻩ}

}

{《Java语言程序设计基础教程》习题解答

class ex4_5_11 {

public static void main(String args[]) {

ﻩﻩex4_5_11_B x = new ex4_5_11_B();

System.out.println(\"count=\" + x.count);

}

A. count=1 ﻩﻩ ﻩB. count=2

C. count=3 ﻩﻩ ﻩD. count=4

解答:B

10、设有下面两个类的定义:

class Person

{ ﻩlong id; // 身份证号

《Java语言程序设计基础教程》习题解答

String name; // 姓名

}

class Student extends Person

{ ﻩint score; // 入学总分

int getScore(){

return score;

}

}

ﻩ问:类Person和类Student的关系是( )

A、包含关系 ﻩ ﻩB、继承关系

C、关联关系 ﻩ ﻩ D、无关系,上述类定义有语法错误

解答:B

《Java语言程序设计基础教程》习题解答

10、对于接口的实现,不可以构造一个接口对象,但可以声明一个接口______。

11、 在Java语言中所有的类都是直接或间接地继承______类而得到的。

12、在Java中一个父类可以有______个子类,一个类只能有______个直接父类。

13、什么是继承?什么是多重继承和单继承?Java采用何种机制来实现多重继承?

14、什么是隐藏?什么是重写?二者有何区别?

15、子类会继承父类的所有方法和属性么?

16、设计一个Student类,以一维数组存储一个班级的学生信息。要求:

ﻩ1)将Student设计成一个接口

2)自定义一个包来管理所设计的类

17、定义一个接口,该接口中只有一个抽象方法getClassName()。设计一个类Horse,该类实现接口ClassName中的方法getClassName(),功能是获取该类的类名。

基础开发篇

《Java语言程序设计基础教程》习题解答

第5章 Java API

5.9练习思考题

1、 阅读下列代码后,正确的说法是( )

public class Person {

ﻩstatic int arr[] = new int[10];

ﻩpublic static void main(String args[]) {

ﻩﻩSystem.out.println(arr[1]);

ﻩ}

A、编译时将产生错误 B、编译时正确,运行时将产生错误

C、输出零ﻩ ﻩ ﻩD、输出空

解答:C

《Java语言程序设计基础教程》习题解答

2、 仔细分析下面程序,正确的输出结果是( )

public class Test1 {

ﻩpublic static void changeStr(String str) {

ﻩstr = \"welcome\";

}

public static void main(String[] args) {

ﻩ String str = \"1234\";

ﻩﻩchangeStr(str);

ﻩ System.out.println(str);

}

A、welcome B、welcome1234

《Java语言程序设计基础教程》习题解答

C、1234ﻩ ﻩ D、1234welcome

解答:C

3、 Java语言中的一些常用的实用工具,如处理时间的Date类,处理变长数组的Vector类等,所在的包是( )。

A、java.lang包 ﻩ ﻩﻩB、java.io包

C、java.awt包 ﻩ ﻩﻩD、java.util包

解答:D

4、 下面代码执行后,正确的输出结果是:( )

String s1="You are hired!\";

System.out.println(s1.replace('h','f')); //用f把字串中的h替换了

System.out.println(s1);

A.ﻩYou are fired! ﻩ ﻩB. You are fired!

《Java语言程序设计基础教程》习题解答

You are hired! ﻩﻩ You are fired!

C. You are hired! ﻩ ﻩD. ﻩYou are hired!

You are hired! ﻩ You are fired!

解答:A

5、下面的程序段执行后输出的结果是( )

ﻩﻩStringBuffer buf=new StringBuffer(\"China2008");

buf.insert(5,\"@");

System.out.println(buf.toString());

A、China2008@

B、@China2008

C、China@2008

D、China#2008

《Java语言程序设计基础教程》习题解答

解答:C

6、在Java中,所有类的根类是( )。

A、java.lang.Object

B、java.lang.Class

C、java.applet.Applet

D、java.awt.Frame

解答:A

第6章 图形用户界面设计

6.7练习思考题

1、ﻩ下列哪个布局管理器中的按钮位置会根据Frame的大小改变而改变?( A. BorderLayout

B. CardLayout

《Java语言程序设计基础教程》习题解答

C.ﻩGridLayout

D. FlowLayout

解答:D

2、 下面的组件都属于容器,父类属于java.awt.Window的容器是( )

A、Frame

B、Panel

C、Container

D、Applet

解答:A

3、 关于以下的组件的接口,正确的是( )

A、TextArea组件可实现的接口是ActionListener

B、List组件可实现的接口,除了ItemListener,还可以是ActionListener

《Java语言程序设计基础教程》习题解答

C、Choice组件可实现的接口是ActionListener

D、以上都不对

解答:B

4、 下列哪一项是一个用于在GridLayout中的特定区域中放置多个组件的容器?

A、Applet

B、Panel

C、Button

D、Rectangle

解答:B

5、 关于对话框(Dialog)说法错误的是?( )

A、对话框是Window类的子类。

B、对话框和一般窗口的区别在于它依赖于其他窗口。

《Java语言程序设计基础教程》习题解答

C、对话框分为模式和非模式两种。

D、文件对话框的构造方法: fdlg=new (\"\");

解答:D

6、 下列容器中哪一个是从java.awt.Window继承的?(A、Frame

B、Panel

C、Container

D、Applet

解答:A

7、 在Java中,对组件可实现不同的布局,下列哪个不对( A、顺序布局(FlowLayout)

B、边界布局(BorderLayout)

)

)

《Java语言程序设计基础教程》习题解答

C、网络布局(GridLayout)

D、布局(CenterLayout)

解答:D

8、下面关于事件监听的说明,哪一个语句是正确的。 ( )

A. 所有组件,都不允许附加多个

B. 如果多个加在一个组件上,那么事件只会触发一个

C. 组件不允许附加多个

D. 机制允许按照我们的需要,任意调用addXxxxListener 方法多次,而且没有次序区别

解答:D

9、 下面哪个事件可以处理在文本框中输入回车键的事件______。

A. ItemListener ﻩB. ActionListener

《Java语言程序设计基础教程》习题解答

C. KeyListener ﻩﻩD. MouseListener

解答:B

10、Frame类对象的默认布局是什么布局?( )。

A、FlowLayout布局ﻩﻩB、BorderLayout布局

C、CardLayout布局 ﻩD、GridLayout布局

解答:B

11、不能添加到Container中的是?( )

A、an Applet

B、a Component

C、a Container

D、a MenuComponent

解答:A

《Java语言程序设计基础教程》习题解答

12、Panel类对象的默认布局是什么布局?( )。

A、FlowLayout布局ﻩ B、BorderLayout布局

C、CardLayout布局 D、GridLayout布局

解答:A

13、Java中GUI工具包有______和______。

14、通过调用方法______可以改变当前容器的布局方式。

15、通过______方法向容器中添加组件。

16、AWT布局管理器有______、______、______、______和______。

17、什么是GUI?功能是什么?

18、利用AWT控件编写一个求解一元二次方程根的程序,要求:

(1)具有一元二次方程三个系数a、b、c的输入界面。

(2)显示b*b-4*a*c的值。

《Java语言程序设计基础教程》习题解答

(3)显示求出的根。

19、编写一个应用程序,窗口标题为“移动按钮”,窗口布局为null,在窗口中有两个按钮,单击其中一个按钮能够让另一个按钮移动。

20、实现窗口登陆对话框,要求输入用户名和密码,如果输入正确,弹出对话框提示正确,否则提示错误。

第7章 多线程

7.8练习思考题

1、 Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?( )

A、安全性 ﻩ ﻩB、多线性

C、跨平台ﻩ ﻩﻩ ﻩD、可移植

解答:B

2、 Runnable接口中的抽象方法是( )。

《Java语言程序设计基础教程》习题解答

A、startﻩ ﻩﻩﻩﻩﻩ B、stop

C、yield ﻩﻩ D、run

解答:D

3、 有以下程序段

class MyThread extends Thread {

public static void main(String args[]) {

MyThread t = new MyThread();

MyThread s = new MyThread();

t.start();

System.out.print(\"one.\");

s.start();

System.out.print("two.");

《Java语言程序设计基础教程》习题解答

}

public void run() {

System.out.print(\"Thread\");

}

则下面正确的选项是( )

A、编译失败

B、程序运行结果为:one.Threadtwo.ThreadC、程序运行结果是:one.two.ThreaThread

D、程序运行结果不确定

解答:D

4、 下列方法中可以用来创建一个新线程的是( )

《Java语言程序设计基础教程》习题解答

A、实现java.lang.Runnable接口并重写start()方法。

B、实现java.lang.Runnable接口并重写run()方法。

C、继承java.lang.Thread类并重写run()方法。

D、实现java.lang.Thread类并实现start()方法。

解答:B

5、 作为类中新线程的开始点,线程的执行是从下面哪个方法开始的。(A、public void start()

B、public void run()

C、public void int()

D、public static void main(String args[])

解答:A

6、 创建一个新线程的方法,可以使用下面哪2种 ( )

《Java语言程序设计基础教程》习题解答

A、继承java.lang.Thread类,并且重载run方法。

B、继承java.lang.Runnable类,并且重载start方法。

C、实现java.lang.thread类,实现run方法。

D、实现java.lang.Runnable接口,实现run方法。

E、实现java.lang.Thread类,实现start方法。

解答:A,D

7、 线程有几种状态?

8、 引起线程中断的常见原因是什么?

9、 一个线程执行完run()方法后,进入了什么状态?该线程还能再调用start()方法么?

10、线程在什么状态时,调用isAlive()方法返回的值是false。

11、建立线程有几种方法?

12、怎样设置线程的优先级?

《Java语言程序设计基础教程》习题解答

13、线程在它的一个完整的生命周期中通常要经历哪几种状态?写出这些种状态并加以说明。

第8章 文件和流

8.7练习思考题

1、 创建一个向文件“”追加内容的输出流对象的语句是( A. OutputStream out=new (“”);

B. OutputStream out=new (“”, “append”);

C. out=new (“”, true);

D. out=new (new file(“”));

E. OutputStream out=new (new File(“”)true);

解答:C,E

2、 下面类中,属于过滤流FilterInputStream的子类的是(A、DataInputStreamﻩﻩﻩB、DataOutputStream

)。

) 《Java语言程序设计基础教程》习题解答

C、PrintStream ﻩ D、BufferedOutputStream

解答:A

3、 流的read方法和流的read方法有何不同?

4、 BufferedReader流能直接指向一个文件对象吗?

5、 请编写一个程序,开启一个文本文件,一次读取其内的一行文本,令每行形成一个String,并将读出的String对象置于LinkedList中,以反相次序显示出LinkedList内的所有内容。

import java.io.*;

import java.util.*;

class exA4_2{

public static void main(String args[]) throws Exception{

LinkedList lines=new LinkedList();

BufferedReader in=

《Java语言程序设计基础教程》习题解答

new BufferedReader(new ("exA4_2.java\"));

String s;

while((s=in.readLine())!=null)

lines.add(s);

in.close();

ListIterator it=lines.listIterator(lines.size());

while(it.hasPrevious())

System.out.println(it.previous());

}

第9章 异常处理

9.4 练习思考题

《Java语言程序设计基础教程》习题解答

1、 为了捕获一个异常,代码必须放在下面( )语句块中。

A、try块 ﻩ B、catch块

C、throws块 ﻩﻩD、finally块

解答:A

2、 下列常见的系统定义的异常中,有可能是网络原因导致的异常是( A、ClassNotFoundExceptionﻩ ﻩB、IOException

C、 ﻩD、UnknownHostException

解答:D

3、 下列常见的系统定义的异常中,哪个是输入、输出异常?( )A、ClassNotFoundException

B、IOException

C、

)。

《Java语言程序设计基础教程》习题解答

D、UnknownHostException

解答:B

4、 在代码中,使用catch(Exception e)的好处是 ( )

A、只会捕获个别类型的异常

B、捕获try块中产生的所有类型的异常

C、忽略一些异常

D、执行一些程序

解答:B

5、 异常包含下列那一个内容? ( )

A、程序中的语法错误

B、程序的编译错误

C、程序执行过程中遇到的事先没有预料到的情况

《Java语言程序设计基础教程》习题解答

D、程序事先定义好的可能出现的意外情况

解答:C

7、 编写一个异常类MyException,再编写一个类Student,该类有一个产生异常的方法public void speak(int m) throws MyException,要求参数m的值大于1000时,方法抛出一个MyException对象。最后编写主类,在主类的main方法中用Student创建一个对象,让该对象调用speak方法。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务