Java期末复习题全

Java期末复习题全
Java期末复习题全

第一部分 Java语言概述

1选择题

1-1在下列概念中,Java语言只保留了。

A. 运算符重载

B. 方法重载

C. 指针

D. 结构和联合

1-2下列关于Java语言特征的描述中,错误的是。

A. 支持多线程操作

B. Java 程序与平台无关

C. Java程序可以直接访问Internet上的对象

D. 支持但继承和多继承

1-3 下列关于Java Application 程序在结构上特点的描述中,错误的是。

A. Java程序是由一个或多个类组成的

B. 组成Java程序的若干个类可以放在一个文件中,也可以放在多个文件中

C. Java 程序的文件名要与某个类名相同

D. 组成Java程序的多个类中,有且仅有一个主类

1-4Java程序经过编译后生成的文件的后缀是。

A..obj B..exe C. .class D. .java

1-5下列关于运行字节码文件的命令行参数的描述中,正确的是。

A.第一个命令行参数(紧跟命令字的参数)被存放在args[0]中。

B.第一个命令行参数被存放在args[1]中。

C.命令行的命令字被存放在args[0]中。

D.数组args[]的大小与命令行参数的个数无关。

2.判断题

1-1Java语言是在C++语言之前问世的。()

1-2Java语言具有较好的安全性和可移植性及与平台无关等特性。()

1-3Java语言中取消了联合概念,保留了结构概念。()

1-4Java语言中数据类型占内存字节数与平台无关。()

1-5Java语言中可用下标和指针两种方式表示数组元素。()

1-6Java语言的源程序不是编译型的,而是编译解释型的。()

1-7操作系统中进程和线程两个概念是没有区别的。()

1-8Java语言既是面向对象的又是面向网络的高级语言。()

1-9Java程序分为两大类:一类是Application 程序,另一类是Applet程序。前者又称Java应用程序,后者又称Java小应用程序。()

1-10JavaApplication程序是由多个文件组成的,其中可以有也可以没有主文件。()

1-11组成JavaApplication的若干类中,有且仅有一个主类,只有主类中含有主方法main( )_。()

1-12JavaApplication程序中,必有一个方法main( ),该方法有没有参数都可以。()

1-13Java程序中是不区分大小写字母的。()

1-14下列两个命令:javac 和java是不同的,编译时用前者,运行时用后者。()

1-15Java程序编译后生成的是字节码文件,其后缀是 .exe。()

1-16字节码文件机器是不能直接识别的,它要经过解释器,边解释边执行。()

1-17在Java程序中,使用import语句引入类是在解释器中实现的。()

1-18在运行字节码文件时,使用java命令,一定要给出字节码文件的扩展名 .class 。()

1-19如果一个Java程序中有多个类,编译后只生成一个字节码文件,其名字同主类名。()

1-20Java程序中出现的输出方法println( )和print ( ) 是完全一致的。()

1.B

2.D

3.C

4.C

5.A

1.错

2.对

3. 错

4. 对

5. 错

6. 对

7. 错

8. 对

9. 对 10.错

11. 对 12. 对 13. 错 14. 对 15.错 16. 对 17. 对 18.错 19. 错 20. 错

第二部分 Java语言语法基础

1、选择题

2-1Java语言所用的字符集中字符是 B 位。

A.8 B. 16 C.32 D.64

2-2下列关于标识符的描述中,正确的是 A 。

A.标识符中可以使用下划线和美元符

B.标识符中可以使用连接符和#号符

C.标识符中大小写字母是无区别的

D.标识符可选用关键字

2-3Java语言的各种分隔符中,非法的是 D 。

A.空白符 B. 分号 C. 逗号 D. 问号

2-4下列是Java语言中可用的注释符,其中错误的是 C 。

A.// B. /*···*/ C. /**···**/ D. /**···*/

2-5 Java 语言中字符型数据的长度是 B 位。

A.8 B. 16 C.32 D.64

2-6下列描述的两种数据类型的长度不相等的是 A 。

A.字符型和布尔型 B字节型和布尔型 C 短整型和字符型

D整型和单精度浮点型

2-7下列是Java语言中的复合数据类型,其中错误的是 C 。

A.数组 B.接口 C.枚举 D.类

2-8下列是关于Java语言中数据类型的强制转换的描述,其中错误的是 CD 。A.当数据类型从高转换为低时需要强制转换

B.强制转换时使用强制转换运算符,形如(<类型>)

C.浮点型数据强制转换为整型时,小数部分四舍五入

D.赋值操作中都要采用强制类型转换

2-9下面是关于常量的描述中,错误的是 BD 。

A.Java语言的常量有5种 B.浮点型数12.456时单精度的

C. 布尔型常量只有两个可选值:true和 false

D.字符串常量含有结束符‘/0’

2-10下列关于定义符号常量的描述中,错误的是 A 。

A.定义符号常量是用关键字const B.定义符号常量时要赋初值

C.符号常量既可定义为类成员,又可在方法中定义

D.定义符号常量时必须给出数据类型

2-11下列关于变量的默认值的描述,其中错误的是 BC 。

A.定义变量而没有进行初始化时,该变量具有默认值

B.字符型变量的默认值为换行符

C.布尔型变量的默认值为true D.变量的默认值是可以被改变的

2-12下列关于变量定义的描述中,正确的是 AC 。

A.定义变量时至少应指出变量名字和类型

B.定义变量时没有给出初值,该变量可能是无意义值

C.定义变量时,同一个类型多个变量间可用逗号分隔

D.定义变量时必须要给变量初始化

2-13下列关于变量作用域的描述,错误的是 D 。

A.在某个作用域定义的变量,仅在该作用域内室可见的,而在该作用域外事不可见的B.在类中定义的变量的作用域在该类中的方法内可以使用

C.在方法中定义的变量的作用域仅在该方法体内

D.在方法中作用域可嵌套,在嵌套的作用域中可以定义同名变量

2-14下列关于增1(++)减1(--)运算符的描述中,正确的是 AB 。

A.增1减1运算符都是单目运算符

B.增1减1运算符都具有前缀运算和后缀运算

C.增1减1运算符不会改变变量的值

D.增1减1运算符前缀运算和后缀运算后表达式值是相同的

2-15下列关于运算符优先级的描述中,错误的是 D 。

A.在表达式中,优先级高的运算符先进行计算

B.赋值运算符优先级最低

C.单目运算符优先级高于双目和三目运算符

D.逻辑运算符优先级高于逻辑位运算符

2-16下列关于表达式的描述中,正确的是 AC 。

A.任何表达式都有确定的值和类型

B.算术表达式的类型由第一个操作数的类型决定

C.逻辑表达式的操作数是逻辑型的

D.赋值表达式的类型取决于右值表达式的类型

2-17下列表达式中,非法的是 B 。

int a=5,b=6; double c=1.1,d=2.2;

A. a+c+++d

B. (a+c )--

C. c<

D. a!=b?c:d

2-18下列关于条件语句的描述中,错误的是 AC 。

A.if语句可以有多个else子句和else if 子句

B.if语句中可以没有else 子句和else if 子句

C.if语句中的<条件>可以使用任何表达式

D.if语句的if体、else体内可以有循环语句

2-19下列关于开关语句的描述中,错误的是 BCD 。

A.开关语句中,default子句可以省略

B.开关语句中,case子句的(语句序列)中一定含有break语句

C.开关语句中,case子句和default子句都可以有多个

D.退出开关语句的唯一条件是执行break语句

2-20下列关于循环语句的描述中,错误的是 BD 。

A.任何一种循环体内都可以包含一种循环语句

B.循环体可以是空语句,也可以是空

C.循环体内可以出现多个break 语句

D.循环语句中,循环体至少被执行一次

2-21下列循环语句的循环次数是 D 。

int i=5;

do{

System.out.println( i- -);

i--;

}while(i!=0);

A. 0

B. 1

C. 5

D.无限

2-22下列循环语句中,循环体被执行的次数为 D 。

For( int i=0,j =0;(j!=18)||(i<4);i++);

A. 3

B. 4

C. 不确定

D.无限

2-23下列关于Java语言的数组描述中,错误的是 D 。

A.数组的长度通常用length B.数组下标从0开始

C.数组元素是按顺序存放在内存的 D.数组在赋初值和赋值时都不判届2-24下列关于数组的定义形式,错误的是 ACD 。

A.int[]a;a=new int; B.char b[];b=new char[80]

C.int[]c=new char[10]; D.int[]d[3]=new int[2][]

2-25下列关于字符串的描述中,错误的是 B 。

A.Java 语言中,字符串分为字符串常量和字符串变量两种

B.两种不同的字符串都是String类的对象

C.Java语言中不在使用字符数组存放字符串

D.JavaApplication 程序的main( )的参数args[]是一个String类的对象数组,用它可存放若干个命令行参数

2、判断题

2-1Java语言标识符中可以使用美元符。(对)

2-2Java语言标识符中大小写字母是没有区别的。(错)

2-3分号(;)、逗号(,)和冒号(:)都可作为Java语言中的分隔符。(对)

2-4文档注释符/**···*/是Java语言特有的注释符。(对)

2-5Java语言的基础数据类型有4种:整形、浮点型、字符型和布尔型。(对)

2-6Java语言的复合数据类型有3种:数组、类和包。(错)

2-7Java语言中,字节型与字符型是一样的。(错)

2-8Java语言是一种强类型语言,数据类型转换有两种:隐含转换和强制转换。(对)

2-9数据由高类型转换到低类型时,采用强制转换,数据精度要受到损失。(对)

2-10布尔型常量可以自动转换为短整型变量。(错)

2-11Java语言使用的是Unicode字符集,每个字符在内存中占8位。(错)

2-12Java语言的字符中部隐含结束符。(对)

2-13Java语言中定义符号常量使用final关键字。(对)

2-14Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。(对)

2-15Java语言中只有无符号的字符型。(对)

2-16字符型变量中只存放一个字符。(对)

2-17定义变量时必须进行初始化,否则变量具有无意义的值。(错)

2-18若定义变量时不进行初始化,则该变量一定具有默认值。(对)

2-19Java语言中,变量出现的位置只有一种,即为类体内定义的成员变量。()

2-20Java语言规定在嵌套的程序块中不允许定义同名变量。()

2-21求余运算符%可用于整数和浮点数。()

2-22关系运算符组成的表达式是逻辑型表达式。()

2-23逻辑运算符&和&&是没有区别的,都具有逻辑与的功能。()

2-24运算符&是逻辑与运算符还是按位与运算符取决于操作数的类型。()

2-25运算符“〉〉”和“〉〉〉”都是右移位运算符,其区别在于对向右移出的位置是舍弃还是保留。()

2-26赋值运算符组成的赋值表达式中,通常将右边的表达式的类型转换为左边变量的类型后再赋值。()2-27三目运算符的3个操作数中,第一个操作数的类型必须是逻辑型的。()

2-28强制类型转换运算符的功能是将一个表达式的类型转换为所指定的类型。()

2-29对象运算符instanceof是一个单目运算符,其表达式的值是类的对象。()

2-30内存分配运算符new可以为创建的数组分配内存空间,但不能为创建的变量分配空间。()

2-31运算符的优先级中,最低的是三目运算符。()

2-32运算符的结合性中,除了三目运算符是自右向左。()

2-33关系表达式和逻辑表达式的值都是布尔型的。()

2-34赋值表达式的值不能是逻辑型的。()

2-35条件表达式的类型总是“?”和“:”之间的操作数的类型。()

2-36块语句可以嵌套,外层块语句定义的变量在内层块语句中是可见的。()

2-37条件语句的嵌套结构中,一个if子句最多有一个else子句与它配对,而且一定是距离它最近的。()2-38在条件语句的嵌套结构中,一个if子句最多有一个else子句与它配对,而且一定是距离它最近的。()

2-39开关语句中,case子句后面的<语句序列>可以是块语句。()

2-40循环语句中,<条件>表达式必须是逻辑型表达式。()

2-41在Java语言中,break语句不能作用在<标号名>的左边。()

2-42Java语言中,数组在静态和动态赋值时都判越界。()

2-43说明或声明数组时不分配内存大小,创建数组时分配内存大小。()

2-44基本数据类型的数组在创建时系统将指定默认值。()

2-45数组在定义时可以进行初始化,使用初始值表。()

2-46Java语言中数组元素只有下标表示,没有指针表示。()

2-47创建数组时,系统自动将数组元素个数存放length 变量中,可供用户对数组操作时使用。()

2-48字符串可分为字符串常量和字符串变量两种,它们都是对象。()

2-49Java语言中不使用字符数组存放字符串。()

2-50下列创建字符串s的方法是错误的。()

char ch[]={‘m’,m’,’n’,’n’};

char s[]=new char(ch);

1. 对

2.错

3. 对

4. 对

5. 对

6. 错

7. 错

8. 对

9. 对 10. 错 11. 错12. 对 13. 对14. 对 15. 对 16. 对 17. 错 18. 对 19. 错 20. 对 21. 错22. 对 23.错 24. 对 25. 错26对 27. 对 28. 对 29. 错 30. 错 31. 错 32. 错33. 对 34. 错 35. 错 36. 对 37. 错38. 对39. 对 40. 对 41. 错 42. 对 43对 44. 对 45. 对 46. 对 47. 对 48. 对 49. 对 50. 对

第三部分 Java语言面向对象的特征

1、选择题

3-1下列对封装性的描述中,错误的是 B 。

A.封装体包含了属性和行为

B.封装体中的属性和行为的访问权限是相同的

C.被封装的某些信息在封装体外是不可见的

D.封装使得抽象的数据类型提高了可重用性

3-2下列关于继承性的描述中,错误的是 C 。

A.一个类可以同时生成多个子类 B.子类继承了父类的所有成员

C.Java语言支持单重继承和多重继承

D.Java语言通过接口可使子类使用多个父类的成员

3-3下列对多态性的描述中,错误的是 A 。

A.Java语言允许运算符重载 B.Java语言允许方法重载

C.Java语言允许变量覆盖 D.多态性提高了程序的抽象性和简洁性

3-4在类的修饰符中,规定只能被同一包类所使用的修饰符是 B 。

A.public B.默认 C. final D.abstract

3-5在成员变量的修饰符中,规定只允许该类自身访问的修饰符是 A 。

A.private B.public C.默认 D.protected

3-6在成员方法的访问控制修饰符中,规定访问权限包含该类自身、同包的其他类和其他包的该类子类的修饰符是 D 。

A.public B.private C.默认 D.protected

3-7下列关于构造方法的特点的描述中,错误的是 A 。

A.不可重载 B.方法名同类名 C.无返回类型 D.系统自动调用

3-8下列关于构造方法的特点的描述中,错误的是 D 。

A.在类体内说明静态方法使用关键字static

B.静态方法只能处理静态变量或调用静态方法

C.静态方法不占用对象的内存空间,非静态方法占用对象的内存空间

D.静态方法只能用类名调用

3-9下列对静态初始化起的描述中,错误的是 D 。

A.静态初始化器是用来对类进行初始化的,而不是对某个对象初始化

B.静态初始化器是由关键字static和一对花括号组成的语句组

C.静态初始化器不同于构造方法,它不是方法

D.静态初始化器在产生新对象时,是由系统自动调用的

3-10下列关于抽象类的描述中,错误的是 C 。

A.抽象类是用修饰符abstract说明的 B.抽象类是不可以定义对象的

C.抽象类是不可以有构造方法 D.抽象类通常要有它的子类

3-11下列关于类的继承性的描述中,错误的是 D 。

A.继承是在已有的类基础上生成新类的一种方法 B.子类继承父类的所有成员

C.Java语言要求一个子类只有一个父类 D.父类中成员的访问权限在子类中将被改变

3-12 下列关于子类继承父类的成员的描述中,错误的是 A 。

A.子类中继承父类中的所有成员都可以直接访问

B.子类中定义有与父类同名变量时,子类继承父类的操作中,使用继承父类的变量;子类执行自己的操作中,使用自己定义的变量

C.当子类中出现成员方法头与父类方法头相同的方法时,自类成员方法覆盖父类中的成员方法

D.方法重载时编译时处理的,而方法覆盖时在运行式处理的

3-13下列关于接口的描述中,错误的是 B 。

A..接口实际上是有常量和抽象方法构成的特殊类

B.一个类只允许继承一个接口

C.定义接口使用的关键字是interface

D.在继承接口的类中通常要给出阶口中定义的抽象方法的具体实现

3-14下列关包的描述中,错误的是 A 。

A.包是一种特殊的类 B.包视若干个类的集合

C.包时使用package 语句创建的

D.包有有名包和无名包两种

3-15下类常用包中,存放用户图形界面类库的包是 A 。

A. Java.awt B https://www.360docs.net/doc/a04224304.html,ng C.java.util D java.io

3-16下列常用包中,存放用户图形界面类库的包是 B 。

A. Math

B.Object

C. System

D.String

2、判断题

3-1类是一种类型,也是对象的模板。(对)

3-2Java语言只支持单重继承,不支持多重继承。(对)

3-3类中说明的方法可以定义在类体外。(错)

3-4class不是定义类的唯一关键字。(错)

3-5某类的对象可以作为另一类的成员。(对)

3-6在类体内说明成员变量是不允许赋初值。(错)

3-7最终变量就是Java语言的符号常量。()

3-8静态变量的引入只能使用对象。(错)

3-9静态方法只能处理静态变量。(对)

3-10抽象方法是一种只有说明而无具体实现的方法。(对)

3-11最终方法是不能被当前子类重新定义的方法。(对)

3-12Java语言中,方法调用一律都是传址的引用调用。(错)

3-13非静态方法中,方法调用一律都是传址的引用调用。(错)

3-14静态初始化其实在构造方法被自动调用之前运行的。(对)

3-15抽象方法仅有方法头,而无方法体。(对)

3-16抽象方法一定出现在抽象类中。(对)

3-17最终类、最终方法和最终变量的修饰符都用final。(对)

3-18创建对象是系统将调用适当的构造方法给对象初始化。(对)

3-19使用运算符new创建对象时,赋给对象的值实际上是一个地址值。(对)

3-20使用构造方法只能给非静态成员变量赋初值。(对)

3-21创建对象时,该对象占有的内存空间除了非静态的成员变量外,还有非静态的成员方法。(对)

3-22Java语言中,对象成员的标是指使用运算符“.”。(对)

3-23Java语言中,对象赋值实际上是同一个对象具有两个不同的名字,因为它们都有同一个地址值。(对)

3-24对象可作方法参数,对象数组不能做方法参数。(错)

3-25Java语言中,所创建的子类都应有一个父类。(对)

3-26Java语言中,类的继承是可以传递的。(对)

3-27Java语言中,构造方法是可以继承的。(错)

3-28子类中构造方法应包含自身类的构造方法和直接父类的构造方法。(对)

3-29调用this或super的构造方法的语句必须放在第一条语句。(对)

3-30.子类对象可以直接赋值给父类对象,而父类对象不可以赋值给子类对象。(错)

3-31子类中所继承父类的成员都可以在子类中访问。(错)

3-32成员方法的重载和父该是一回事。(错)

3-33一个类可以实现多个接口。接口可以实现“多重继承”。(对)

3-34实现接口的类不能是抽象类。(对)

1、B 2.C 3.A 4.B 5.A 6.D 7.A 8.D 9.D 10.C 11.D 12.A 13.B 14.A 15.A 16.B

1.对

2. 对

3.错

4. 错

5. 对

6. 错

7. 对

8. 错

9. 对 10. 对 11. 对 12. 错13. 错 14对 15. 对 16. 对 17. 对 18. 对 19. 对 20. 对 21. 对 22. 对 23.

对 24. 错 25. 对 26. 对 27. 错 28. 对 29. 对 30. 错 31. 错 32. 错 33. 对34. 对

第四部分 JavaApplet及其应用

1、选择题

4-1Applet类是属于包的。

A.java.awt B. java.applet C. java.io D. https://www.360docs.net/doc/a04224304.html,ng

4-2下列关于Applet程序的描述中,错误的是。

A.Applet程序的主类必须是Applet类的子类

B. Applet程序的主类中应有一个main()方法

C.Applet不是完整的独立程序

D.Applet的字节码文件必须嵌套在一个HTML文件中

4-3下列关于Applet程序的描述中,错误的是。

A.将编译好的Java源文件,使用javac命令生成字节码文件

B.将字节码文件嵌入HTML文件,并存放在一个WWW服务器中

C.使用浏览器解释HTML文件中的标记

D.使用编译器直接执行嵌套在HTML文件中的字节码文件

4-4在Applet类的主要方法中,用来实现初始化操作的是。

A.init() B. stop() C. start() D. paint()

4-5下列关于HTML文件的描述中,错误的是。

A.HTML文件是使用一种超文本标记语言( HTML)书写的文件

B.HTML文件中使用的标记通常使用一对尖括号括起的,两个标记之间是正文内容

C.HTML文件中没有单独出现的标记

D.HTML中不区分大小写字母

4-6下列关于向Applet程序传递参数的描述中,错误的是。

A.Applet程序可以通过命令行获取外部参数

B.Applet程序可以通过HTML文件获取外部参数

C.使用Applet标记中的PARAM标记来实现

D.Applet程序中使用getParameter()方法读取参数值

4-7下列关于字体的描述中,错误的是。

A.Font类提供了创建字体对象的方法

B.字体风格(字体)使用了3个静态常量表示

C.表示字形的字体风格只能单独使用,不可以组合

D.字号表示字的大小,用点表示,一个点为1/72英寸

4-8下列用来获取当前颜色的方法是。

A.getColor() B. setColor() C. getRed() D. Color()

4-9下列各种会址矩形的方法中,绘制实心的矩形的方法是。

A . fillRect() B. drawRect() C.clearRect() D.drawRoundrRect()

4-10下列演示图像的描述中,错误的是。

A.使用图像类Image定义图像对象

B.使用方法getImage()获取图像信息

C.使用方法drawImage() 显示图像

D.不可使用显示图像的方法进行缩放

2、判断题

4-1Applet程序是通过浏览器中内置的Java解释器来解释执行的。()

4-2Applet程序是以.java为扩展名的Java语言源程序,该程序经过编译器后便成为可执行文件。()

4-3嵌入到HTML文件中的是Applet的源程序。()

4-4运行Applet程序是使用AppletViewer命令运行嵌入了字节码文件的HTML文件,从而获得运行结果。()

4-5Applet程序中的主类必须是Applet类的子类。()

4-6Applet类是Java语言类库中的一个重要的系统类,它被存放在java.awt包中。()

4-7init( )方法是用来完成初始化操作的,在Applet程序运行期间只执行一次。()

4-8 start( )方法被系统自动调用开启动住县城运行。通常在Applet程序被重新启动时,该方法被系统自动调用。()

4-9 paint( )方法是在需要重画图形界面时被系统自动调用来显示输出结果的。()

4-10 stop( )方法是用来暂停执行操作的,它与start()方法不同,只被调用一次。()

4-11init( ),start( ),stop( )和destroy( )4个方法构成Applet程序的生命周期。()

4-12HTML语言中和是用来表示HTML文件开始和结束的标记。()

4-13 HTML中多数标记是成对出现的,也有不成对出现的标记。()

4-14 HTML中是区分大小写字母的。()

4-15通过HTML文件中使用的PARAM标记可以向Applet程序传递参数的。()

4-16parseInt( ) 方法的功能是将int型数据转换为String型数据。()

4-17AWT提供了许多标准的GUI组件和布局管理器等类。()

4-18Java语言采用16位颜色标准。Java的调色板保证128色。()

4-19Graphics类提供了3种绘制文本的方法,其方法名都是drawString( )。()

4-20绘制椭圆的方法是drawOval( ),使用该方法也可以绘制圆。()

1.B

2.B

3.D

4.A

5.C

6.A

7.C

8.B

9.A 10.D

1.对

2. 错

3. 错

4. 对

5. 对

6. 错

7. 对

8. 对

9. 对 10. 错 11. 对12. 错 13. 对14. 错 15. 对 16. 错 17. 对 18. 错 19. 对 20. 对

第五章

选择题

5-1 下列关于容器的描述中,错误的是D

A.容器是由若干个组建和容器组成的

B.容器是对图形界面中界面元素的一种管理

C.容器是一种对指定宽和高的矩形范围

D.容器都是可以独立的窗口

5-2 下列界面元素中,不是容器的是A

A.List

B.Frame

C.Dialog

D.Panel

5-3 下列关于实现图形用户界面的描述中,错误的是D

A.放在容器中的组件首先要定义,接着要初始化

B.放在容器中的多个组件是要进行布局的,默认的布局策略是FlowLayout

C.容器中所有组件都是事件组件,都可以产生事件对象

D.事件处理是忧监听者定义的方法来实现的

5-4 下列关于组件类的描述中,错误的是A

A.组件类中包含了文本组件类(TextComponent)和菜单组件类(MenuComponent)

B.标签(Label)和按钮(Button)是组件类(Component)的子类

C.面板(Panel)和窗口(Window)是容器类(Container)的子类

D.文本框(TextField)和文本区(TextArea)是文本组件类(TextComponent)的子类

5-5 在对下列语句的解释中,错误的是C

but.addActionListener(this);

A.but是某种事件对象,如按钮事件对象

B.t his表示当前容器

C.A ctionListener是动作事件的监听者

D.该语句的功能是将but对象注册为this对象的监听者

5-6 所有事件类的父类是C

A.ActionEvent B.AwtEvent C.KeyEvent D.MouseEvent

5-7 所有GUI标准组件类的父类是C

A.Buttom B.List C.Component D.Container

5-8 下列各种布局管理器中Window类、Dialog类和Frame类的默认布局是C

A.FlowLayout B.CardLayout C.BorderLayout D.GridLayout

5-9 在下列各种容器中,最简单的无边框的又不能移动和缩放的只能包含在另一种容器中的容器是D A.Window B.Dialog C.Frame D.Panel

5-10 下列关于菜单和对话框的描述中,错误的是C

A.Frame容器是可以容纳菜单组件的容器

B.菜单条中可包含若干个菜单,菜单中又可包含若干菜单项,菜单项中还可包含菜单子项

C.对话框与Frame一样都可作为程序的最外层容器

D.对话框内不含有菜单条,它由Frame弹出

判断题

5-1 AWT是抽象窗口工具包的英文缩写。(对)

5-2 容器中只能包含有组件,而不能再含有容器。(错)

5-3 容器分可以独立的窗口和不可以独立的窗口两种。(对)

5-4 单选按钮提供“多选一”的输入选择,下拉列表提供“多选多”的输入选择。(错)

5-5 所有容器的默认布局都是FlowLayout。(错)

5-6 所有的组件都是事件源。(错)

5-7 Java 2 的事件处理方法是采用委托事件处理模型。(对)

5-8 事件组件都应注册一个事件监听者。(对)

5-9 事件监听者除了得知事件的发生外,还应调用相应方法处理事件。(对)

5-10 所有事件的父类是EventObject类。(对)

5-11 图形用户界面是由用户自定义成分、控制组件和容器组成的。(对)

5-12 所有GUI标准组件类的父类是Component类。(对)

5-13 所有容器类的父类是Frame类。(错)

5-14 标准和按钮都是事件源。(对)

5-15 文本去和文本框都可以引发两种事件:文本改变事件和动作事件。(错)

5-16 每个复选框有两种状态:“打开”和“关闭”状态。(对)

5-17 复选框组(CheckboxGroup)是由若干个按钮组成的。在一组按钮中可选多个。(错)

5-18 列表(List)是由多个选项组成的,只可在列表框的若干个选项选取一个。(错)

5-19 下拉列表(Choice)是一种“多选多”的输入界面。(错)

5-20 滚动条有两类:水平滚动条和垂直滚动条。(对)

5-21 画布(Canvas)是一种可容纳多个组件的容器。(错)

5-22 所有容器都采用顺序布局(FlowLayout)作为默认布局管理器。(错)

5-23 边界布局(BorderLayout)将容器分为东、西、南、北共4个区域。(错)

5-24 卡片布局(CardLayout)可使容器容纳多个组件,在同一时刻只显示若干个组件中的一个。(对)

5-25 容器可容纳组件和容器,同一个容器中的组件可被同时显示或者同时隐藏。(对)

5-26 所有容器都是有边框的。(错)

5-27 Panel容器是可以嵌套使用的。(对)

5-28 Applet实际是一种特殊的Panel容器。Java Applet程序只负责它拥有的Applet容器内的无边框区域。(对)5-29窗口(Window)容器是一种独立窗口,但它不能作为程序的最外层容器。(对)

5-30 Frame容器是有边框的容器,它也是一种独立窗口,只能作为最外层容器。(对)

5-31 Frame容器可以容纳菜单组件,它实现了MenuContainer接口。(对)

5-32 MenuComponent类是菜单组件的父类。(对)

5-33 菜单条(MunuBar)、菜单(Munu)、菜单项(MunuItem)是3中不同的菜单组件。(错)

5-34 对话框(Dialog)不是一种独立使用的容器。(错)

5-35 文件对话框(FileDialog)是对话框(Dialog)的子类,它是一种打开文件和保留文件的对话框窗口。(对)

分析程序输出结果

5-1 Exer5_1.java

import java.applet.*;

import java.awt.*;

public class Exer5_1 extends Applet

{

private Label lab1,lab2;

public void init()

{

lab1=new Label();

lab1.setText("标签文本左对齐");

lab1.setAlignment(Label.LEFT);

lab2=new Label("标签文本右对齐",Label.RIGHT);

setLayout(new GridLayout(3,3));

add(lab1);add(lab2);

}

}

运行改程序后,输出结果如图5-5所示。

图5-5 分析题5-1输出结果

5-2 Exer5_2.java

import java.applet.*;

import java.awt.*;

import java.awt.event.*;

public class Exer5_2 extends Applet implements ActionListener,ItemListener

{

List colList;

String colName[]={"黑色","蓝色","浅蓝色","绿色","红色","黄色"};

Color cols[]={Color.black,Color.blue,Color.cyan,Color.green,Color.red,Color.yellow};

int t;

public void init()

{

colList=new List(4,false);

colList.addActionListener(this);

colList.addItemListener(this);

for(int i=0;i

colList.add(colName[i]);

add(colList);

}

public void actionPerformed(ActionEvent e)

{}

public void itemStateChanged(ItemEvent e)

{

showStatus(colList.getSelectedItem()+";index"+colList.getSelectedIndex());

t=colList.getSelectedIndex();

repaint();

}

public void paint(Graphics g)

{

g.setColor(cols[t]);

g.fillRect(15,30,20,20);

}

}

运行改程序后,输出结果如图5-6所示。

5-3 Exer5_3.java

import java.awt.*;

import java.awt.event.*;

public class Exer5_3 extends Frame implements ActionListener

{

Frame fr;

Panel deck;

CardLayout c1;

Button but[];

String name[]={"第一张","下一张","前一张","最末张"};

public Exer5_3()

{

fr=new Frame("卡片窗口");

deck=new Panel();

c1=new CardLayout();

deck.setLayout(c1);

Panel c1=new Panel();

Label lab1=new Label("卡片1");

c1.add(lab1);

deck.add(c1,lab1.getText());

Panel c2=new Panel();

Label lab2=new Label("卡片2");

c2.add(lab2);

deck.add(c2,lab2.getText());

Panel c3=new Panel();

Label lab3=new Label("卡片3");

c3.add(lab3);

deck.add(c3,lab3.getText());

Panel c4=new Panel();

Label lab4=new Label("卡片4");

c4.add(lab4);

deck.add(c4,lab4.getText());

Panel contr=new Panel();

contr.setLayout(new GridLayout(2,2));

but=new Button[name.length];

for(int i=0;i

{

but[i]=new Button(name[i]);

but[i].addActionListener(this);

contr.add(but[i]);

}

fr.add(contr,BorderLayout.WEST);

fr.add(deck,BorderLayout.EAST);

fr.setSize(300,150);

fr.show();

}

public void actionPerformed(ActionEvent e) {

if(e.getSource()==but[0])

c1.first(deck);

if(e.getSource()==but[1])

c1.next(deck);

if(e.getSource()==but[2])

c1.previous(deck);

if(e.getSource()==but[3])

https://www.360docs.net/doc/a04224304.html,st(deck);

}

public static void main(String args[])

{

Exer5_3 m1=new Exer5_3();

}

}

运行该程序后,输出结果如图5-7所示。

5-4 Exer5_4.java

import java.awt.*;

public class Exer5_4 extends Frame

{

TextField tf=new TextField("",30);

MenuBar mb1=new MenuBar();

Menu f=new Menu("文件");

Menu m=new Menu("照片");

Menu s=new Menu("储存");

String name[]={"第一张","下一张","前一张","最末张"};

CheckboxMenuItem[]save={new CheckboxMenuItem("保存"),new CheckboxMenuItem("另存为")};

MenuItem[] file1={new MenuItem("打开"),new MenuItem("关闭")};

MenuBar mb2=new MenuBar();

Menu fo=new Menu("水果");

MenuItem[] fruit={new MenuItem("香蕉"),new MenuItem("苹果"),new MenuItem("李子")};

Button but=new Button("Swap");

public Exer5_4()

{

for(int i=0;i

{

m.add(new MenuItem(name[i]));

if((i+1)%3==0)

m.addSeparator();

}

for(int i=0;i

s.add(save[i]);

f.add(s);

for(int i=0;i

f.add(file1[i]);

mb1.add(f);

mb1.add(m);

setMenuBar(mb1);

tf.setEditable(false);

add("Center",tf);

add("North",but);

for(int i=0;i

fo.add(fruit[i]);

mb2.add(fo);

}

public boolean handleEvent(Event e)

{

if(e.id==Event.WINDOW_DESTROY) System.exit(0);

else

return super.handleEvent(e);

return true;

}

public boolean action(Event e,Object arg) {

if(e.target.equals(but))

{

MenuBar m=getMenuBar();

if(m==mb1)

setMenuBar(mb2);

else if(m==mb2)

setMenuBar(mb1);

}

else if(e.target instanceof MenuItem)

{

if(arg.equals("打开"))

{

String str=tf.getText();

Boolean ch=false;

for(int i=0;i

if(str.equals(name[i]))

ch=true;

if(!ch)

tf.setText("你按了打开菜单");

else

tf.setText("打开"+str);

}

else if(e.target.equals(file1[1]))

System.exit(0);

else if(e.target.equals(save[0]))

tf.setText("你按了保存菜单");

else if(e.target.equals(save[1]))

tf.setText("你按了另存为菜单");

else

tf.setText(arg.toString());

}

else

return super.action(e,arg);

return true;

}

public static void main(String args[])

{

Exer5_4 ex=new Exer5_4();

ex.setSize(new Dimension(200,200));

ex.setVisible(true);

}

}运行该程序后,输出结果如图5-8所示。

5-5Exer5_5.java

import java.awt.*;

import java.awt.event.*;

class myDialogFrame extends Frame implements ActionListener

{

MenuItem aboutItem,exitItem;

aboutDialog myDialog;

public myDialogFrame()

{

setSize(300,200);

setTitle("我的联系窗口");

addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent E){System.exit(0);}});

MenuBar mb=new MenuBar();

setMenuBar(mb);

Menu fm=new Menu("练习");

mb.add(fm);

aboutItem=new MenuItem("关于信息");

aboutItem.addActionListener(this);

fm.add(aboutItem);

exitItem=new MenuItem("退出");

exitItem.addActionListener(this);

fm.add(exitItem);

}

public void actionPerformed(ActionEvent e)

{

Object sou=e.getSource();

if(sou==aboutItem)

{

if(myDialog==null)

myDialog=new aboutDialog(this);

myDialog.show();

}

else if(sou==exitItem)

{System.exit(0);}

}

}

class aboutDialog extends Dialog

{

public aboutDialog(Frame parent)

{

super(parent,"信息框",true);

Panel p1=new Panel();

TextArea ta=new TextArea(10,30);

ta.setText("请写下你的信息");

p1.add(ta);

add("North",p1);

Panel p2=new Panel();

Button but=new Button("返回");

p2.add(but);

add("Center",p2);

but.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){setVisible(false);}});

setSize(300,250);

}

}

public class Exer5_5

{

public static void main(String args[])

{

Frame fr=new myDialogFrame();

fr.show();

}

}

运行该程序后,输出结果如图5-9所示。

编程题

5-1使用Java Applet编写满足下列要求的程序:

(1)含有两个按钮和两个标签;

(2)含有文本框和文本区;

(3)含有一个按钮具有退出功能;

编写程序如下:

import java.awt.*;

import java.awt.event.*;

class pro5_1 extends WindowAdapter implication ActionListener {

Frame f;

Label la1,la2;

Button b1,b2;

TextField tf;

int tag=0;

public static void main(String args[])

{

pro5_1 mywin=new pro5_1();

mywin.display();

}

public void display()

{

f=new Frame("我的现实窗口");

la1=new Label("标签1");

la2=new Label("标签2");

f.add(la1,"North");

f.add(la2,"West");

b1=new Button("现实字符串");

b2=new Button("退出");

b1.addActionListener(this);

f.add(b1,"South");

b2.addActionListener(this);

f.add(b2,"East");

tf=new TextField();

f.add(tf,"Center");

f.addWindowListener(this);

f.setSize(400,200);

f.setVisible(true);

}

public void actionPerformed(ActionEvent e)

{

String s1="这是一个字符串";

String s2="这是另一个字符串";

if(e.getActionCommand().equals("退出"))

System.exit(0);

if(tag==0)

{

tf.setText(s1);

tag=1;

}

else

{

tf.setText(s2);

tag=0;

}

}

public void windowClosing(WindowEvent e)

{

System.exit(0);

}

}

运行该程序后,输出结果如图5-10所示。

5-2使用Java Application编写满足下列要求的程序。

(1)使用GridLayout布局。

(2)设计一个简单的计算器。包括数字按钮0~9,以及加、减、乘、除、清零、等于运算按钮和一个现实计算结果的文本区。

请读者参照本书本章5.2程序距离中的例5.1的程序内容进行编写。

5-3编写一个图形用户界面的Application程序。

(1)有一个菜单条;

(2)菜单条中有3个菜单;

(3)每个菜单有2个菜单项,其中一个菜单项又具有2个菜单子项。

程序内容如下:

import java.awt.*;

import java.awt.event.*;

public class pro5_3 extends Frame implements ActionListener,ItemListener

{

TextField text;

public pro5_3()

{

super("一个联系菜单的窗口");

setSize(300,200);

}

public void init()

{

MenuBar myB=new MenuBar();

setMenuBar(myB);

Menu m1=new Menu("文件");

m1.add(new MenuItem("保存"));

m1.addSeparator();

m1.add("退出");

m1.addActionListener(this);

myB.add(m1);

Menu m2=new Menu("编辑");

m2.add("复制");

m2.addSeparator();

m2.add("全选");

m2.addActionListener(this);

myB.add(m2);

Menu m3=new Menu("插入");

m3.add("页码");

m3.addSeparator();

Menu m31=new Menu("图片");

m31.add("来自剪贴画");

m31.add("来自图形文件");

m3.add(m31);

m3.addActionListener(this);

myB.add(m3);

text=new TextField();

add("South",text);

}

public static void main(String args[])

{

pro5_3 myMenu=new pro5_3();

myMenu.init();

myMenu.setVisible(true);

}

public void itemStateCharged(ItemEvent e) {

text.setText("状态改变");

}

public void actionPerformed(ActionEvent e) {

text.setText(e.getActionCommand());

if(e.getActionCommand()=="退出")

System.exit(0);

}

}

运行该程序后,输出结果如图5-11所示。

JAVA期末考试试卷

天津城市建设学院2007~2008学年第二学期 《 java 语言程序设计A 》 试题A 卷 课程号:073101-0 试卷说明:闭卷考试,时间120分钟。 一、 填空(本题共15空,每空2分,共30分) 1.如果一个java 源程序文件中定义有4个类,使用sun 公司的JDK 编译器javac 编译该源程序文件将产生_____4___个文件名与类名相同扩展名为___.Class_____的字节码文件。 2.Java 中所有类都是类 __Object__的子类。 3.请填出在java .lang 包中与下列基本数据类型相对应的封装类: float :java .lang .Float , char : _ java .Lang.char_______, boolean : ___ java .Lang.boolean_____。 4.被关键字____final______修饰的方法是不能被当前类的子类重新定义的方法 5.线程的四种状态是__新建_____ 、_运行_ 、_中断 、__死亡___。 6.java 语言中__https://www.360docs.net/doc/a04224304.html,ng.Objet ___是所有类的根。 7.Swing 的事件处理机制包括__事件的监听者__、事件和事件处理者。 8.URL_____Uniform Resourse Locator_____是的缩写。 9.java 有两类应用程序java Application 和____java 10.转义字符以___\__开头。 二、选择(本题共20小题,每题2分,共40分) 1.欲构造ArrayList 类的一个实例,此类继承了List 接口,下列哪个方法是正确的 ? ( B ) A 、 ArrayList myList=new Object (); B 、 List myList=new ArrayList (); C 、 ArrayList myList=new List (); D 、 List myList=new List (); 2.paint()方法使用哪种类型的参数? ( A ) A 、 Graphics B 、 Graphics2D C 、 String D 、 Color 3.指出正确的表达式 ( C ) A 、 byte=128; B 、 Boolean=null; C 、 long l=0xfffL; D 、 double=0.9239d; 4.指出下列程序运行的结果 ( B ) public class Example{ String str=new String("good"); char[]ch={'a','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex .change(ex .str,ex .ch); System .out .print(ex .str+" and "); Sytem .out .print(ex .ch); } public void change(String str,char ch[]){ str="test ok"; ch[0]='g'; } } B 、 good and abc B 、 good and gbc C 、test ok and abc D 、 test ok and gbc 5.运行下列程序, 会产生什么结果 ( A )

java期末考试试题及答案

1.谈谈final, finally, finalize的区别。 final关键字: a) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。 b) 将变量或方法声明为final,可以保证它们在使用中不被改变。 c) 被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。 d) 被声明为final的方法也同样只能使用,不能重载。 finally关键字:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块。 finalize:方法名,不是关键字。Java技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 2.GC是什么? 为什么要有GC? GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 3.Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 写程序Math.round(11.5) = 12 Math.round(-11.5) = -11 4.给我一个你最常见到的runtime exception ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

大学java期末考试试题和标准答案

《Java程序设计基础》期终考试试卷(模拟) (闭卷) 一、简单编程题(共50分) 在考试文件夹中新建一个应用程序proj1(应用程序地文件夹名称为proj1),按照以下要求编写程序代码. 1. 在程序中定义Person类,为该类编写如下字段、构造器、访问器、修改器和相应地其他方法.(20分) (1)在Person类中定义两个字段: 私有访问权限,类型为String地name字段; 私有访问权限,类型为int地age字段. (2)在Person类中定义构造器 构造器有两个参数,第一个参数地类型是String,名字为name.第二个地类型是int,名字是age.第一个参数地值赋给字段name,第二个参数地值赋给字段age. (3)为Person类地两个字段分别编写访问器方法,方法名称分别为getName和getAge.getName方法返回类型为String地name字段地值;getAge方法返回类型为int地age字段地值. (4)为Person类地两个字段分别编写修改器方法,方法名称分别为setName和setAge.setName方法有一个String类型地参数,方法中用该参数来设置字段name地值;setAge方法有一个int类型地参数,方法中用该参数来设置字段age地值,并且保证age 字段地值不能为负数,如果要将age设置为负数则给出错误提示. (5)为Person类写一个叫做toString地方法,该方法不需要参数,有返回值.它返回一个字符串,字符串中包含name字段和age字段地值,如果name字段地值是“Helen”,age字段地值是20,则返回字符串:“Name:Helen. Age:20”. 2. 在程序中定义Student类,Student类继承Person类.(10分) (1)在Student类中除了继承其超类Person地name字段和age字段外,它还有自己地字段String类型地school,该字段地访问权限为私有. (2)Student类地构造器有三个参数,第一个参数为name,String类型;第二个参数为age,int类型;第三个参数为school,String类型,这三个参数地值分别赋给三个字段name、age和school. (3)在Student类中重写其超类Person地toString方法,要求该方法返回地字符串不仅包含超类Person中地name字段和age字段地值,而且包含子类Student中地school 字段地值.如果name字段地值是“Helen”,age字段地值是20,school字段地值是“山西大学商务学院”,则返回地字符串为“School:山西大学商务学院Name:Helen. Age:20”. 3. 在程序中定义Test类,在Test类中定义一个main方法,在main方法中实现如下操作:(10分) (1)创建一个Person类地对象,它地name为“John”,age为18,对象名为person1; (2)创建一个Student类地对象,它地name为“Helen”,age为18,school为“MIT”,对象名为stuent1; (3)分别输出这两个对象地相关信息(调用它们地toString方法). 4. 分别为Person类和Student类编写文档注释,并生成应用程序地类文档.要求如下:(10分) (1)类地文档注释,包括类名、类地作者及版本号,作者地名字用考生地姓名标注,版本号使用考试地日期; (2)构造器和各个方法地文档注释,包括方法地名称、构造器和方法地功能说明,要求标注构造器和方法中地参数及返回值,并说明参数地类型、名称和返回值地类型. (3)文档注释完成后要使用BlueJ地JavaDOC工具生成应用程序地类文档. 二、代码改错(共20分)

java考试试卷及答案

JAVA考试试卷及答案 选择题 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画 图操作。 A. start() B. stop() C. init() D. paint() 3、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?B A)安全性B)多线程C)跨平台D)可移植 4、下列哪个类声明是正确的?D A)abstract final class HI{···}B)abstract private move(){···} C)protected private number; D)public abstract class Car{···} 6、在Java语言中,下列哪些语句关于内存回收的说明是正确的? B A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释放内存 D.内存回收程序可以在指定的时间释放内存对象 10、下列Object类中的方法,哪一项不是完全跟线程有关:A A.String toString() B.void notify() C.void notifyAll() D.void wait() 11、给出下面代码:C public class Person{ static int arr[] = new int[10]; public static void main(String a[]) { System.out.println(arr[1]); } } 下列说法中正确的是? A.编译时将产生错误; B.编译时正确,运行时将产生错误; C.输出零; D.输出空。 12、字符串是Java已定义的类型,关于它的构造函数,下面说法不正确的是:B A.String(char[] value, int offset, int count) B.String(int[] codePoints,int offset, int count) C.String(String original) D.String(StringBuffer buffer) 13、下列说法中正确的是:C A.导入包会影响程序的性能

JAVA期末试题及答案

Java 程序设计》课程试卷 1.使用 Java 语言编写的源程序保存时的文件扩展名是( )。 (A ) .class ( B ) .java C ) .cpp ( D ) .txt 2.设 int a=-2 ,则表达式 a>>>3 的值为( )。 (A ) 0 (B )3 (C ) 8 (D )-1 3.设有数组的定义 int[] a = new int[3] ,则下面对数组元素的引用错误的是( ) ( A )a[0]; ( B ) a[a.length-1]; (C )a[3]; (D )int i=1 ; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( )。 (A )封装 (B )继承 (C )覆盖 (D )重载 5.在类的定义中构造函数的作用是( )。 (A )保护成员变量 (B )读取类的成员变量 (C )描述类的特征 (D )初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( )。 ( A ) try ( B ) break ( C ) catch ( D ) finally 7.类与对象的关系是( )。 (A )类是对象的抽象 (B )对象是类的抽象 15. Java 语言使用的字符码集是 (A) ASCII (B) BCD (C) DCB 16. 如果一个类的成员变量 (A) public (B) (C 对象是类的子类 (D )类是对象的具体实例 )。 8.下面哪一个是 Java 中不合法的标识符( ( A )$persons ( B ) twoNum ( C )_myVar ( D )*point 9.为 AB 类的一个无形式参数无返回值的方法 ( ) 。 ( A ) static void method( ) ( B ) public void method( ) ( C ) final void method( ) ( D ) abstract void method( ) 10.欲构造 ArrayList 类的一个实例,此类继承了 ( A ) ArrayList myList=new Object( ) ( B ) List myList=new ArrayList( ) ( C ) ArrayList myList=new List( ) ( D ) List myList=new List( ) 11. Java 源文件和编译后的文件扩展名分别为( (A) .class 和 .java (C).class 和 .class 12. 在 Java Applet 程序用户自定义的 (A) start( ) (B) stop( ) (C) init( ) 13. 对于一个 Java 源文件, (A) package,import,class (C) import,package,class 14. 下面哪个是非法的: (A) int I = 32; (C) double d = 45.0; method 书写方法头,使得使用类名 List 接口,下列哪个方法是正确的( ) ( B).java 和 .class (D) .java 和 .java Applet 子类中,一般需要重载父类的 (D) paint( ) import, class (B) class,import,package (D) package,class,import ( ) 定义以及 package 正确的顺序是: (B) float f = 45.0; (D) char c = // 符号错 AB 作为前缀就可以调用它,该方法头的形式为 方法来完成一些画图操作。 (D) Unicode 只能 在所在类中使用 则该成员变量必须使用的修饰是

Java web期末考试题

第1页(共7页) 天津师范大学期末考核 2015—2016 学年第2学期 期末考核试卷 科目:Java Web 应用开发 学院:计信学院 专业:计算机科学 一、 单选题:(每小题2分,共10分) 1. 下列语句属于声明语句的是( A )。 A .<%! Int a = 4;%> B.<% int a=4;%> C .<%--int a=4-- %> D. <%@ int a=4%> 得分 2. 一个servlet 的生命周期不包括( B )方法? A .init( )方法 B. invalidate( )方法 C .service( )方法 D .destroy( )方法 得分 3. Application 对象的作用域是( B )。 A . 一次会话 B. 整个应用程序 C . 一次请求 D . 整个页面 得分 4. 下面对servlet 中重定向说法描述错误的是( D )。 A .使用的是HttpServletResponse 接口的sendRedirect()方法 B. 源组件的响应结果不会发送给客户端 C .sendRedirect()方法后的代码仍会执行 D .源组件和目标组件共享ServletRequest 对象

第2页(第7页) 得分 5. 有一个JavaBean 组件,类名为Student ,此JavaBean 组件的获得访问方法是getTotalScore,其功能是获得某个学生几门功课的总分,返回值保留一位小数,则以下关于getTotalScore 的声明正确的是( B )。 A .public int getTotalScore() B. public float getTotalScore() C .protected int getTotalScore() D .protected float getTotalScore() 得分 2. 3. Sevlet 过滤器核心对象放置在javax.servlet 包中,其名称为 4.

Java期末考试题

2010年——2011年Java期末考试题 一、判断题。 1.Java语言是平台无关的语言。T 2.类的静态方法中可以访问该类的非静态数据成员.F 3.Java中方法调用时参数传递都是按值传递的,因此从方法中退出时,参数的值是不 会变的。T 4.覆盖方法所抛出的异常不能比原方法更多。T 5.Final 方法不能被覆盖。T 6.抽象类中一定包含抽象方法。F 7.接口中的方法必须是抽象方法。T 8.在方法定义中,所以可能发生的异常都必须用try{} catch(){}捕捉。F 9.Java支持多重继承。F 10.Final修饰的类不能派生子类。T 11.覆盖的同名方法中,子类方法不能比父类方法的访问权限更严格。T 12.不能在静态方法中使用this.T 13.抽象类中不能创建对象。T 14.一个类可以实现多接口。T 15.接口中可以包含非静态成员。F 16.不论是否捕捉到异常try{}catch(){} final{}语句中finally块中的代码总要被执行。T 17.一个类实现一个接口,则该类必须实现接口中的所有方法。F 18.线程使用sleep方法去休眠后可以使用notify方法唤醒。F 19.线程使用sleep方法休眠是会释放该线程同步锁定的对象。F 20.Final类中的属性和方法都必须是final的。F 二、选择题 1、Java中复合数据类型不包括(D) A.类类型 B.数组 C.接口类型 D.指针 2、请从四个选项中选择答案,下列代码的执行结果是:(C) Public class Test{ Public static void main(String args[]){ Float t=9.0f; Int q=6; System.out.println((t++)*(--q)); } } A.40 B.40.0 C.45.0 D.36.0 3、下列关于修饰符混用的说法,错误的是(D) A.abstract 不能与final 并列修饰同一个类 B.abstract类中可以有非abstract的方法 C.普通类(非abstract类)中不能有abstract方法 D.static方法中能处理非static的属性 4、关于被保护访问控制符protected修饰的成员变量,以下说法正确的是(A) A.可以被该类自身、与它在同一个包中的其它类、在其它包中的该类的子类所访问B.只能被该类本身和该类的所有的子类访问 C.只能被该类自身所访问 D.只能被同一个包中的类访问 5、x=2,y=3,z=4,则表达式z*=y++*--x的值是(A) A.12 B.24 C.16 D.3 6、以下赋值语句正确的是(D) A.char c1=”a” B.float f1=3.22 C.byte b1=266 D.long L1=0xAC8L 7、Java不支持多重继承,但我们可以通过(B)实现 A.多态 B.接口 C.覆盖 D.抽象类 8.已知类person是类student的父类,以下数组定义和赋值哪些是正确的(A) A. person p[]=new person[3]; p[1]=new student(); B .student s[]=new person[3]; s[1]=new person(); C .person p[]= new student[3];p[1]= new person(); D .student s[]=new student[3];s[1]=new person; 9 编译MyClass.java之后,得到了三个字节码文件:MyClass.class , MyClasslittle$.class MyClass$1.class.这表明(C) A.MyClass类中的两个方法:little和1 B. MyClass.Java中有三个类:MyClass、little和1 C. MyClass类中有两个内部类:一个是命名的little,另一个是匿名的1 D. MyClass、little和1,这三者没什么关系 10、main 方法是java Application 程序执行的入口点,关于main方法的方法头以下(B)是合法的。 A.public static void main() B.public static void main(String arg[]) C.public static int main(String[] arg) D. B.public void main(String arg[]) 11、当编译和运行下面的代码会出现什么情况?(A)

Java期末考试试卷1

信息学院2006—2007学年第二学期期末考试试题A 课程名称:Java 语言程序设计主讲:年级: 班级姓名学号 题号一二三四五合计 分数 一、选择(每题1分,共20分) 1.有一个名为MyClass的public类,想成功编译需满足以下哪个条件?() A. MyClass类中必须定义一个正确的main()方法。 B. MyClass必须定义在MyClass.java源文件中。 C. MyClass类必须定义在MyClass包中。 D. MyClass类必须被导入。 2.以下哪些修饰符不能用于顶层类?( ) A. public B. private C. abstract D. final 3.以下哪个是java中合法的关键字?( ) A. array B. Boolean C. protect D. super 4.以下哪些是合法的标识符?( ) A.%abcd B. 2abcd C. package D. _a_long_name 5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同。这种面向对象程序的特性称为. () A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 6.有以下代码,请问该程序的运行结果是什么?( ) class Example { public static void main(String args[]){ boolean b=true; System.out.println(b); } } A. 打印输出true B. 打印输出1 C.编译错误 D. 无内容输出 7.以下哪些是基本数据类型?( ) A.int B. String C. Integer D. Float 8. 给出以下代码,请选择正确的选项?( ) class Example{ public static void main(String[] args){ char a=”\u1234”; } } A. 代码编译成功 B. 代码编译成功,但有警告 C. 代码编译失败 9.以下哪个语句用于声明一个二维数组?( ) A. int[5][5] a=new int[][]; B. int a=new int[5,5] C. int[][] a=new int[5][5]; D. int[][] a=new [5]int[5]; 10.给出以下代码,请问该程序的运行结果是什么?()

JAVA语言程序设计期末考试试题及答案

J A V A语言程序设计期末考试试题及答案 TTA standardization office【TTA 5AB- TTAK 08- TTA 2C】

J A V A语言程序设计考试试题及部分答案 一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B )。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3 2.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。 A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是( B )。 A) 多重的 B) 单重的 C) 线程的 D) 不能继承 4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A)interface B) package C) extends D) class 6.若已定义 byte[ ] x= {11,22,33,-66} ; 其中0≤k≤3,则对x数组元素错误的引用是( C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0]

7.下列语句序列执行后,ch1 的值是( B )。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B 8.下列语句序列执行后,i 的值是( D )。 int i=8, j=16; if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8 9.下列语句序列执行后,k 的值是( C )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A) 31 B) 32 C) 2 D) 33 10.下面语句执行后,i 的值是( B )。 for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7 11.设有定义 float x=, y=, z=;则以下的表达式中,值为true的是( B )。 A) x > y || x > z B) x != y

JAVA语言程序设计期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案1(应考必备题库) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( A )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( C )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

《JAVA语言程序设计》期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案 (应考必备题库) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

java_期末考试试题(含答案)

1、如下哪个是Java中有效的关键字。( C、false ) 2、下面的代码段执行之后count的值是什么。( D、16 ) int count=1; for(int i=1;i<=5;i++){ count+=i; } System.out.println(count); 3、下列哪一个import命令可以使我们在程序中创建输入/输出流对象。( C、import java.io.*; ) 4、下列选项中,不属于Java语言特点的一项是。( C、编译执行 ) 5、阅读下列代码段,选出该代码段的正确的文件名。( D ) class A{ void methodl(){ System.out.println(”methodl in class A”):} } public class B{ void method2(){ System.out.println(”method2 in class B”):} public static void main(String args[]){ System.out.println(”main()in class B”): } } A、A .java B、A.class C、B.class D、B.java 6、下面哪条语句把方法声明为抽象的公共方法。( C.public abstract void method(){} 7、编译下面源程序会得到哪些文件。( D ) class A1{ }class A2{ } public class B{ public static void main(String args[ ]){ } } A、只有B.class文件 B、只有A1.Class和A2.class文件 C、有A1.class、A2.Class和B.class文件 D、编译不成功 8、定义类头时能使用的修饰符是(C、protected )。 A、private B、static C、protected D、abstract 9、为了区分重载多态中同名的不同方法,要求( A、形式参数个数或者类型不同 A、形式参数个数或者类型不同 B、返回值类型不同 C、调用时用类名或对象名做前缀 D、形式参数名称不同 10、float类型数据和double类型数据做加法,得到结果的类型是(C、double类型 )。 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,通常的错误不是如下的哪一项?(B、文件名拼写错误) 12、int类型被包装在如下的哪一个类中?( B、java.1ang.Integer ) 13、关于对下列代码段的描述,正确的一项是( C )。 catch(Exception e){ System.Err. println(“An exception was thrown”); throw e; } A、程序终止 B、编译出错 C、该异常不会被处理 D、该异常会继续被上层处理 14、下列说法中,错误的一项是( C )。 A、内部类是被定义于另一个类中的类 B、使用内部类实现监听器,在编程时比较容易实现 C、内部类对象可以访问外部类的成员方法和变量,包括私有成员

java期末考试复习题及答案

《Java程序设计》课程试卷 1.使用Java语言编写的源程序保存时的文件扩展名是( B )。 (A).class (B).java (C).cpp (D).txt 2.设int a=-2,则表达式a>>>3的值为( C )。 (A)0 (B)3 (C)8 (D)-1 3.设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是( C )。 (A)a[0]; (B)a[a.length-1]; (C)a[3]; (D)int i=1; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( D )。 (A)封装(B)继承(C)覆盖(D)重载 5.在类的定义中构造函数的作用是( D )。 (A)保护成员变量(B)读取类的成员变量(C)描述类的特征(D)初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( B )。 (A)try (B)break (C)catch (D)finally 7.类与对象的关系是( A )。 (A)类是对象的抽象(B)对象是类的抽象(C)对象是类的子类(D)类是对象的具体实例 8.下面哪一个是Java中不合法的标识符( D )。 (A)$persons (B)twoNum (C)_myVar (D)*point 9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 (A)static void method( ) (B)public void method( ) (C)final void method( ) (D)abstract void method( ) 10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的( C )。 (A)ArrayList myList=new Object( ) (B)List myList=new ArrayList( ) (C)ArrayList myList=new List( ) (D)List myList=new List( ) 11.Java源文件和编译后的文件扩展名分别为( B ) (A) .class和 .java (B).java和 .class (C).class和 .class (D) .java和 .java

java期末考试试题(含答案)

模拟B卷 考试说明: 1.使用Eclipse编写程序。项目名称为:班级_姓名_学号_卷号。注意:卷号为A或B 2.在项目文件夹下新建一个文本文件,文件名为:答案.txt 3.将编程题外的所有题目写在文本文件中,答案要标明题号。 注意:考试期间遇到死机等问题,需要请示老师,切勿自行解决。否则后果自负。 一、单项选择题:共20题,每小题1分,满分20分 1、下列选项中,不属于Java语言特点的一项是。( D ) A、安全性 B、分布式 C、面向对象 D、编译执行 2、Java语言和c++语言相比,哪一项是Java有的,而c++没有?( C ) A、面向对象 B、有类库 C、跨平台 D、动态链接 3、如下哪个不是Java中有效的变量名。( A ) A、 if B、hello C、name D、good 4、下列不属于Java保留字的一个是( B )。 A、else B、Unicode C、if D、static 5、现有2个char,类型的变量al=’a’、a2=2,当执行al=(char)(al+a2);语句之后,al的值应 该是( C )。 A、’a’ B、12 C、’c’ D、语句在编译时出错 6、下列关于int类型和long类型的说法中,正确的一个是( A )。 A、int类型可以自动转换为long类型 B、long类型可以自动转换为int类型 C、long类型占的存储空间比int类型的小 D、long类型和int类型数据能表示整数的范围一样 7、下列类的定义中,错误的是( B )。 A、class y{ .... } B、public x extends y{ .... } C、public class x extends y{ .... } D、class x extends y implements y1{ .... } 8、执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。 A、1与1 B、2与1 C、1与2 D、2与2 9、为了区分重载多态中同名的不同方法,要求( C )。 A、调用时用类名或对象名做前缀 B、返回值类型不同 C、形式参数个数或者类型不同 D、形式参数名称不同 10、定义类头时能使用的修饰符是( C )。 A、private B、static C、protected D、abstract 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,错误是( D )

中南民族大学《Java语言程序设计》期末试卷A卷

科目序号:6002 A卷 《Java语言程序设计》期末试卷 (试卷总分:100分,考试时间:120分钟,答案写在答卷纸上) 一.判断题(每题1分,共10分) 1.无论Java源程序包含几个类的定义,若该源程序文件以A.java命名,编译后生成的都只有一个名为A的字节码文件。(X )2.Java的各种数据类型所占用的内存长度与具体软硬件环境有关。(X )3.静态初始化器是在其所属的类加载内存时由系统自动调用执行的方法。(O )4.与C语言不同的是,Java语言中的数组元素下标总是从1开始。(X )5.在Java的方法中定义一个常量要用const关键字。(X )6.Java有两类程序:Java Application和Java Applet,其中Java Applet程序只能在图形界面中工作,而Java Application程序只能在字符界面中工作。(X)7.在异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。(X )8.程序员可以不必释放已创建的对象,因为Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(X )9.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准输出System.out 和标准错误输出System.err。(O )10.即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参的,函数体为空。(O ) 二.单项选择题(每题2分,共40分) 1.编译Java Applet 源程序文件产生的字节码文件的扩展名为( B)。 A、java B、class C、html D、exe 2.Java application中的主类需包含main方法,main方法的返回类型是什么?(D ) A、int B、float C、double D、void 3.以下哪个方法用于定义线程的执行体?( C ) A、 start() B、init() C、run() D、synchronized() 4.当浏览器暂时离开含applet 程序的页面时,以下选项中的哪个方法将被执行?(D ) A、init() B、start() C、destroy() D、stop() 5.下面哪个不是Java中的容器? ( A ) A、Canvas B、ScrollPane C、Applet D、Dialog 6.以下标识符中哪项是不合法的( A ) A、const B、$double C、hello D、BigMeaninglessName 7.以下哪个关键字可以用来为对象加互斥锁?(D )

相关文档
最新文档