java习题Ver20Word下载.docx
《java习题Ver20Word下载.docx》由会员分享,可在线阅读,更多相关《java习题Ver20Word下载.docx(43页珍藏版)》请在冰豆网上搜索。
24
25
26
27
28
29
30
一、选择题
1.下列语句哪一个正确()
A.Java程序经编译后会产生machinecode
B.Java程序经编译后会产生bytecode
C.Java程序经编译后会产生DLL
D.以上都不正确
2.下列说法正确的有()
A.class中的constructor不可省略
B.constructor必须与class同名,但方法不能与class同名
C.constructor在一个对象被new时执行
D.一个class只能定义一个constructor
3.提供Java存取数据库能力的包是(a)
A.java.sqlB.java.awtC.java.langD.java.swing
4.下列运算符合法的是(a)
A.&
&
B.<
>
C.ifD.:
=
5.执行如下程序代码
a=0;
c=0;
do{
--c;
a=a-1;
}while(a>
0);
后,C的值是()
A.0B.1C.-1D.死循环
6.下列哪一种叙述是正确的()
A.abstract修饰符可修饰字段、方法和类
B.抽象方法的body部分必须用一对大括号{}包住
C.声明抽象方法,大括号可有可无
D.声明抽象方法不可写出大括号
7.下列语句正确的是()
A.形式参数可被视为localvariable
B.形式参数可被字段修饰符修饰
C.形式参数为方法被调用时,真正被传递的参数
D.形式参数不可以是对象
8.下列哪种说法是正确的()
A.实例方法可直接调用超类的实例方法
B.实例方法可直接调用超类的类方法
C.实例方法可直接调用其他类的实例方法
D.实例方法可直接调用本类的类方法
9.下列标识符合法的是()
A.newB.$UsdollarsC.1234D.Car.taxi
10.下列说法正确的是()
A.数组是一种对象
B.数组属于一种原生类
C.intnumber=[]={31,23,33,43,35,63}
D.数组的大小可以任意改变
11.下列说法正确的是()
A.在类方法中可用this来调用本类的类方法
B.在类方法中调用本类的类方法时可直接调用
C.在类方法中只能调用本类中的类方法
D.在类方法中绝对不能调用实例方法
12.下列说法正确的是()
A.Java面向对象语言容许单独的过程与函数存在
B.Java面向对象语言容许单独的方法存在
C.Java语言中的方法属于类中的成员(member)
D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同
13、以下关于java语言继承的说法正确的是()
A.Java中的类可以有多个直接父类B.抽象类不能有子类
C.Java中的接口支持多继承D.最终类可以作为其他类的父类
14关于构造函数说法错误的是()
A构造函数名与类相同B构造函数无返回值可以使用void修饰
C构造函数在创建对象时被调用D在一个类中如果没有明确的给出构造函数编译器会自动提供一个构造函数
15在Java中关于static关键字的说法错误的是()
Astatic可以修饰方法Bstatic可以修饰变量
Cstatic可以修饰代码块Dstatic修饰的方法在该方法内部可以访问非静态的类成员变量
16、(16-1、编译和运行下面的应用程序,屏幕输出的结果是()。
publicclassTest{
publicstaticvoidmain(Stringargs[]){
Aa=newA("
aaaaa"
);
A.Bb=a.newB();
System.out.println(a.outStr+b.inStr);
}
}
classA{
StringoutStr;
publicA(Strings){
outStr=s;
publicclassB{
publicStringinStr="
bbbbb"
;
A)aaaaaB)ababaC)bbbbbD)aaaaabbbbb
17、(16-5、下面的程序编译运行后,输出的结果是().
importjava.util.Arrays;
publicstaticvoidmain(String[]unused){
String[]str={"
ZZZ"
"
AAA"
"
BBB"
CCC"
};
Arrays.sort(str);
intindex=Arrays.binarySearch(str,"
System.out.println(index);
A)0B)1C)2D)3
18、(16-7、下面的程序编译运行后输出的结果是()。
publicstaticvoidmain(Stringargs[]){
Xa=newX(){
publicvoidshowX(){
System.out.println(a*b);
}
};
a.showX();
classX{
inta=5,b=3;
publicvoidshowX(){
System.out.println(a+b);
}
A)15B)8C)5D)3
19、(16-8、应用程序的main方法中有以下语句,则输出的结果是()。
Strings="
xxxxxxxxxxxxxxx#123#456#zzzzz"
intn=s.indexOf("
#"
intk=s.indexOf("
n+1);
Strings2=s.substring(n+1,k);
System.out.println(s2);
A)123456B)123C)xxxxxxxxxxxxxxxD)zzzzz
20、(16-9、关于下面的程序Test.java说法正确的是()。
Stringx="
1"
inty;
intz=2;
System.out.println(x+y+z);
A)3B)102C)12D)程序有编译错误
21、(16-11、应用程序的main方法中有以下语句,则输出的结果是()。
intb[][]={{1,1,1},{2,2},{3}};
intsum=0;
for(inti=0;
i<
b.length;
i++){
for(intj=0;
j<
b[i].length;
j++){
sum+=b[i][j];
System.out.println("
sum="
+sum);
A)10B)6C)9D)13
22、(16-12、下面的程序段执行后输出的结果是()。
Strings="
Test.java"
booleanb=s.startsWith("
test"
System.out.print(b);
booleanb1=s.endsWith("
java"
System.out.println(b+"
"
+b1);
A)truetrueB)truefalseC)falsetrueD)falsefalse
23、(16-13、应用程序的main方法中有以下语句,则执行后输出的结果是()。
int[]x={125,21,5,168,98};
intmin=x[0];
for(inti=1;
x.length;
i++){
if(x[i]<
min)
min=x[i];
System.out.println(min);
A)125B)5C)98D)168
24、(16-15、下面程序段执行后b的值是()。
Stringstr="
;
booleanb=strinstanceofObject;
A)0B)trueC)1D)false
二、填空题(16-31)根据程序中的注释,将下面的应用程序补充完整。
publicclassA{
publicstaticvoidmain(String[]args){
Aa=newB();
a.test();
voidtest(){
System.out.print("
A"
classB____
(1)_____A{
____
(2)____;
//调用父类的同名方法
System.out.println("
B"
3、编程题
1、假如要编写一个地址簿的程序,设计一个能存储姓名、E-mail地址,并能显示一个地址的Address类。
2、以第一题中的Address类作为超类,定义一个子类,他拥有另一个成员变量来存贮电话号码
练习二
31
32
1.分析下列代码
ClassSuper{
Publicinti=0;
PublicSuper(Stringtext){
i=1;
PublicclasssubextendsSuper{
PublicSub(Stringtext){
I=2;
}
Publicstaticvoidmain(Stringargs{}){
Subsub=mewSub(“hello”);
System.out.println(sub.i);
执行结果()
A.编译失败
B.编译成功且输出0
C.编译成功且输出1
D.编译成功且输出2
2.定义一个类名为”MyClass.java”的类,并且该类可被一个工程中的所有类访问那么该类的正确声明应为()。
A.privateclassMyClassextendsObject
B.clas