Java期末复习题全Word文件下载.docx
《Java期末复习题全Word文件下载.docx》由会员分享,可在线阅读,更多相关《Java期末复习题全Word文件下载.docx(40页珍藏版)》请在冰豆网上搜索。
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.B2.D3.C4.C5.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.8B.16C.32D.64
2-2下列关于标识符的描述中,正确的是A。
A.标识符中可以使用下划线和美元符
B.标识符中可以使用连接符和#号符
C.标识符中大小写字母是无区别的
D.标识符可选用关键字
2-3Java语言的各种分隔符中,非法的是D。
A.空白符B.分号C.逗号D.问号
2-4下列是Java语言中可用的注释符,其中错误的是C。
A.//B./*·
·
*/C./**·
**/D./**·
*/
2-5Java语言中字符型数据的长度是B位。
A.8B.16C.32D.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和falseD.字符串常量含有结束符‘/0’
2-10下列关于定义符号常量的描述中,错误的是A。
A.定义符号常量是用关键字constB.定义符号常量时要赋初值
C.符号常量既可定义为类成员,又可在方法中定义
D.定义符号常量时必须给出数据类型
2-11下列关于变量的默认值的描述,其中错误的是BC。
A.定义变量而没有进行初始化时,该变量具有默认值
B.字符型变量的默认值为换行符
C.布尔型变量的默认值为trueD.变量的默认值是可以被改变的
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。
inta=5,b=6;
doublec=1.1,d=2.2;
A.a+c+++dB.(a+c)--C.c<
<
bD.a!
=b?
c:
d
2-18下列关于条件语句的描述中,错误的是AC。
A.if语句可以有多个else子句和elseif子句
B.if语句中可以没有else子句和elseif子句
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。
inti=5;
do{
System.out.println(i--);
i--;
}while(i!
=0);
A.0B.1C.5D.无限
2-22下列循环语句中,循环体被执行的次数为D。
For(inti=0,j=0;
(j!
=18)||(i<
4);
i++);
A.3B.4C.不确定D.无限
2-23下列关于Java语言的数组描述中,错误的是D。
A.数组的长度通常用lengthB.数组下标从0开始
C.数组元素是按顺序存放在内存的D.数组在赋初值和赋值时都不判届
2-24下列关于数组的定义形式,错误的是ACD。
A.int[]a;
a=newint;
B.charb[];
b=newchar[80]
C.int[]c=newchar[10];
D.int[]d[3]=newint[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的方法是错误的。
charch[]={‘m’,m’,’n’,’n’};
chars[]=newchar(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语言面向对象的特征
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.publicB.默认C.finalD.abstract
3-5在成员变量的修饰符中,规定只允许该类自身访问的修饰符是A。
A.privateB.publicC.默认D.protected
3-6在成员方法的访问控制修饰符中,规定访问权限包含该类自身、同包的其他类和其他包的该类子类的修饰符是D。
A.publicB.privateC.默认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.awtBjava.langC.java.utilDjava.io
3-16下列常用包中,存放用户图形界面类库的包是B。
A.MathB.ObjectC.SystemD.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、B2.C3.A4.B5.A6.D7.A8.D9.D10.C11.D12.A13.B14.A15.A16.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及其应用
4-1Applet类是属于包的。
A.java.awtB.java.appletC.java.ioD.java.lang
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()方法读取参数值