Java程序设计练习题.docx
- 文档编号:25652060
- 上传时间:2023-06-11
- 格式:DOCX
- 页数:36
- 大小:35.05KB
Java程序设计练习题.docx
《Java程序设计练习题.docx》由会员分享,可在线阅读,更多相关《Java程序设计练习题.docx(36页珍藏版)》请在冰豆网上搜索。
Java程序设计练习题
Java程序设计练习题
一、选择题
1、类的构造方法何时被调用?
()
A、类定义时B、调用对象方法时
C、使用对象的变量时D、创建对象时
2、哪种方法返回String中的字符数___
A、size()B、length()C、width()D、girth()
3、Java编程所必须的默认引用包为( )
A、java.sys包 B、java.lang包
C、包 D、以上都不是
4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为()。
A、staticvoidmethod()B、publicvoidmethod()
C、finalvoidmethod()D、abstractvoidmethod()
5、下列哪个是合法的Java标识符?
()
A、Tree&GlassesB、FirstJavaApplet
C、$theLastOneD、273.5
6、设有下面的两个类定义:
classAA{
voidShow(){System.out.println(“我喜欢Java!
”);
}
classBBextendsAA{
voidShow(){System.out.println(“我喜欢C++!
”);
}
则顺序执行如下语句后输出结果为:
()
AAa=newAA();BBb=newBB();
a.Show();b.Show();
A、我喜欢Java!
B、我喜欢C++!
我喜欢C++!
我喜欢Java!
C、我喜欢Java!
D、我喜欢C++!
我喜欢Java!
我喜欢C++!
7、在编写异常处理的Java程序中,每个catch语句块都应该与()语句块对应,使得用该语句块来启动Java的异常处理机制。
A、if–elseB、switchC、tryD、throw
8、下面的代码段中,执行之后count的值是()
intcount=1;
for(inti=1;i<=5;i++)
{count=count+i;
}
System.out.println(count);
A、5B、1C、15D、16
9、若a的值为3时,下列程序段被执行后,c的值是多少?
()
c=1;
if(a>0)
if(a>3)c=2;
elsec=3;
elsec=4;
A、1B、2C、3D、4
10、switch(m)
{Case0:
System.out.println(“Condition0”);
Case1:
System.out.println(“Condition1”);
Case2:
System.out.println(“Condition2”);
Case3:
System.out.println(“Condition3”);break;
Default:
System.out.println(“OtherCondition”);
}
当m的值为________时能引发”Condition1”的输出
A)0,1B)1,2C)2,3D)3,4
11、下面的是关于类及其修饰符的一些描述,不正确的是:
()。
A、abstract类只能用来派生子类,不能用来创建abstract类的对象。
B、final类不但可以用来派生子类,也可以用来创建final类的对象。
C、abstract不能与final同时修饰一个类。
D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。
12、对于子类的构造函数说明,下列叙述中不正确的是()。
A、子类无条件地继承父类的无参构造函数。
B、子类可以在自己的构造函数中使用super关键字来调用父类的含参数构造函数,但这个调用语句必须是子类构造函数的第一个可执行语句。
C、在创建子类的对象时,将先执行继承自父类的无参构造函数,然后再执行自己的构造函数。
D、子类不但可以继承父类的无参构造函数,也可以继承父类的有参构造函数。
13、在下述Java语言语句中,错误的创建数组的方法是()
A、intintArray[];intArray=newint[5];
B、intintArray[]=newint[5];
C、int[]intArray={1,2,3,4,5};
D、intintArray[5]={1,2,3,4.5};
14、以下哪个表达式是不合法的( )
A、String x=”Hello”; int y=9; x+=y;
B、String x=”Hello”; int y=9; x=x+y;
C、String x=”Hello”; int y=9; if(x= =y) { }
D、String x=null;int y=(x!
=null)&&(x.length()>0) ?
x.length :
0
15、下面的语句的作用是:
()。
VectorMyVector=newVector(100,50);
A、创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50。
B、创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50。
C、创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
D、创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
16、Java语言具有许多优点和特点,下列选项中哪个反映了Java程序并行机制的特点()
A)安全性 B)多线性 C)跨平台 D)可移植
17、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( )
A)public static void main()
B)public static void main(String[ ] args)
C) public static int main(String[ ] arg)
D)public void main(String arg[ ])
18、以下代码段执行后的输出结果为( )
int x=3; int y=10;
System.out.println(y%x);
A)0 B)3 C)1 D)2
19、下面关于继承正确的是()
A)在Java中只允许单一继承
B)在Java中一个类只能实现一个接口
C)在Java中一个类不能同时继承一个类和实现一个接口
D)Java的单一继承使得代码不可靠
20、编译JavaApplet源程序文件产生的字节码文件的扩展名为()。
A、javaB、classC、htmlD、exe
21、若在某一个类定义中定义有如下的方法:
abstractvoidperformDial();
该方法属于()。
A、本地方法B、最终方法C、解态方法D、抽象方法
22、在Java中,下面关于包的陈述中正确的是()。
A、包的声明必须是源文件的第一句代码
B、包的声明必须紧跟在import语句的后面
C、只有公共类才能放在包中
D、一个包中只能放一个源文件
23、在java中,类Worker是类Person的子类,Worker的构造方法中有一句”super()”, 该语句( )。
A、调用类Worker中定义的super()方法
B、调用类Person中定义的super()方法
C、调用类Person的构造函数
D、句法错误
24、在类设计中,类的成员变量要求仅仅能够被本类内的成员方法访问,请问应该使用下列哪个修辞词
A、protected
B、public
C、private
D、不需要任何修辞词
25、下列二维数组定义中错误的是()。
A、inta[][]=newint[][];
B、int[]a[]=newint[10][10];
C、inta[][]=newint[10][];
D、int[][]a=newint[10][10];
26、在使用interface声明一个接口时,只可以使用()修饰符修饰该接口。
A、privateB、protected
C、privateprotectedD、public
27、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为()。
A.javaB.class
C.htmlD..exe
28、设x=1,y=2,z=3,则表达式y+=z--/++x的值是()。
A.3B.3.5
C.4D.5
29、不允许作为类及类成员的访问控制符的是()。
A.publicB.private
C.staticD.protected
30、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为()。
A.staticvoidmethod()B.publicvoidmethod()
C.finalvoidmethod()D.abstractvoidmethod()
31、哪个是Java的标识符()
A、publicB、superC、3numberD、width
32、如下哪个是Java中的标识符()
A、fieldnameB、superC、3numberD、#number
33、已知如下定义:
Strings="story";下面哪个语句不是合法的()
A、s+="books";B、s=s+100;
C、intlen=s.length;D、Stringt=s+“abc”;
34、如下哪个是Java中有效的关键字()
A、nameB、helloC、falseD、good
35、下面的代码段执行之后count的值是什么()
intcount=1;
for(inti=1;i<=5;i++){
count+=i;
}
System.out.println(count);
A、5B、1C、15D、16
36、定义一个类,必须使用的关键字是()
A、publicB、classC、interfaceD、static
37、定义一个接口必须使用的关键字是()
A、publicB、classC、interfaceD、static
38、下面那些方法不是接口Collection中已声明的方法()?
A)添加元素的add(Objectobj)方法
B)删除元素的remove(Objectobj)方法
C)得到元素个数的length()方法
D)返回迭代器的iterator()方法,迭代器用于元素遍历
38、应用程序的main方法中有以下语句,则输出的结果是()。
Strings="12345#aaa#bbb#67890";
intn=s.indexOf("#");
intk=s.indexOf("#",n+1);
intm=s.indexOf("#",k+1);
Strings2=s.substring(m+1);
System.out.println(s2);
A)123456B)67890C)aaaD)bbb
39、下面程序段执行后b的值是()。
Integerinteg=newInteger(9);
booleanb=integinstanceofObject;
A)9B)trueC)1D)false
40、应用程序Test.java的源程序如下,在命令行键入:
javaTestaaabbc
回车后输出的结果是()。
publicclassTest{
publicstaticvoidmain(Stringargs[]){
intk1=args.length;
intk2=args[1].length();
System.out.print(k1+""+k2);
}
}
A)32B)12C)13D)33
41、应用程序的main方法中有以下语句,则输出的结果是()。
intb[][]={{1},{2,2},{2,2,2}};
intsum=0;
for(inti=0;i for(intj=0;j sum*=b[i][j]; } } System.out.println("sum="+sum); A)32B)11C)2D)3 42、应用程序的main方法中有以下语句,则执行后输出的结果是()。 int[]x={125,21,5,168,98}; intmax=x[0]; for(inti=1;i if(x[i]>max) max=x[i]; } System.out.println(max); A)125B)5C)98D)168 43、程序Test.java编译运行后输出的结果是()。 publicclassTest{ Strings1="java"; publicstaticvoidmain(Stringargs[]){ intz=2; Testt=newTest(); System.out.println(t.s1+z); } } A)java2B)2C)没有输出结果D)java 44、应用程序的main方法中有以下语句,则输出的结果是()。 Strings1="0.5",s2="12"; doublex=Double.parseDouble(s1); inty=Integer.parseInt(s2); System.out.println(x+y); A)12.5B)120.5C)12D)“12.5” 45、关于下面的程序Test.java说法正确的是()。 publicclassTest{ Stringx="1"; inty; publicstaticvoidmain(Stringargs[]){ intz=2; System.out.println(x+y+z); } } A)3B)102C)12D)程序有编译错误 46、应用程序的main方法中有以下语句,则输出的结果是()。 intb[][]={{1,1,1},{2,2},{3}}; intsum=0; for(inti=0;i for(intj=0;j sum+=b[i][j]; } } System.out.println("sum="+sum); A)10B)6C)9D)13 47、应用程序的main方法中有以下语句,则执行后输出的结果是()。 int[]x={125,21,5,168,98}; intmin=x[0]; for(inti=1;i if(x[i] min=x[i]; } System.out.println(min); A)125B)5C)98D)168 48、应用程序的main方法中有以下语句,则输出的结果是()。 Hashtablehashtable=newHashtable(); hashtable.put("100","aaa"); hashtable.put("200","bbb"); hashtable.put("300","ccc"); System.out.println(hashtable.get("300").toString() +hashtable.get("200").toString() +hashtable.get("100").toString()); A)aaaB)bbbC)cccD)cccbbbaaa 49、以下关于java异常说法不正确的是()。 A)Throwable类是Java语言中Error类和Exception类的父类。 B)当异常对象是Exception类(或其子类)的实例时,能通过Java虚拟机或者throw语句抛出该异常对象,并能通过try…catch…finally处理。 C)如果只用一个catch块捕捉多个异常对象,则catch子句中的参数类型应是所有异常对象的父类。 D)以上说法都不对。 50.关于选择结构下列哪个说法正确? ( ) A.if语句和else语句必须成对出现 B.if语句可以没有else语句对应 C.switch结构中每个case语句中必须用break语句 D.switch结构中必须有default语句 51.while循环和do…while循环的区别是: ( ) A.没有区别,这两个结构任何情况下效果一样 B.while循环比do…while循环执行效率高 C.while循环是先循环后判断,所以循环体至少被执行一次 D.do…while循环是先循环后判断,所以循环体至少被执行一次 52.关于for循环和while循环的说法哪个正确? ( ) A.while循环先判断后执行,for循环先执行后判断。 B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果 C.两种循环任何时候都不可以替换 D.两种循环结构中都必须有循环体,循环体不能为空 53.下列修饰符中与访问控制无关的是 ( ) A.private B.public C.protectedD.final 54、void的含义: ( ) A.方法没有返回值 B.方法体为空 C.没有意义 D. 定义方法时必须使用 55、return语句: ( ) A.只能让方法返回数值 B.方法都必须含有 C.方法中可以有多句return D.不能用来返回对象 56.关于对象成员占用内存的说法哪个正确? ( ) A.同一个类的对象共用同一段内存 B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间 C.对象的方法不占用内存 D.以上都不对 57.下列说法哪个正确? A.不需要定义类,就能创建对象 B.对象中必须有属性和方法 C.属性可以是简单变量,也可以是一个对象 D、属性必须是简单变量 58.下列说法哪个正确? ( ) A、一个程序可以包含多个源文件 B、一个源文件中只能有一个类 C、一个源文件中可以有多个公共类 D、一个源文件只能供一个程序使用 59.关于方法main()的说法哪个正确? ( ) A.方法main()只能放在公共类中 Bmain()的头定义可以根据情况任意更改 C.一个类中可以没有main()方法 D.所有对象的创建都必须放在main()方法中 60.构造函数何时被调用? ( ) A、创建对象时 B、类定义时 C、使用对象的方法时 D、使用对象的属性时 61. 抽象方法: ( ) A、可以有方法体 B、可以出现在非抽象类中 C、是没有方法体的方法 D、抽象类中的方法都是抽象方法 62.关于继承的说法正确的是: ( ) A、子类将继承父类所有的属性和方法。 B、子类将继承父类的非私有属性和方法。 C、子类只继承父类public方法和属性 D、子类只继承父类的方法,而不继承属性 63.关于构造函数的说法哪个正确? ( ) A、一个类只能有一个构造函数 B、一个类可以有多个不同名的构造函数 C、构造函数与类同名 D、构造函数必须自己定义,不能使用父类的构造函数 64.this和super: A、都可以用在main()方法中 B、都是指一个内存地址 C、不能用在main()方法中 D、意义相同 65.关于super的说法正确的是: A、是指当前对象的内存地址 B、是指当前对象的父类对象的内存地址 C、是指当前对象的父类 D、可以用在main()方法中 66.覆盖与重载的关系是 ( ) A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中 B.覆盖方法可以不同名,而重载方法必须同名 C.final修饰的方法可以被覆盖,但不能被重载 D.覆盖与重载是同一回事 67.关于接口哪个正确? ( ) A、实现一个接口必须实现接口的所有方法 B.一个类只能实现一个接口 C.接口间不能有继承关系 D.接口和抽象类是同一回事 68.异常包含下列哪些内容? ( ) A.程序执行过程中遇到的事先没有预料到的情况 B.程序中的语法错误 C.程序的编译错误 D.以上都是 69. 对于已经被定义过可能抛出异常的语句,在编程时: ( ) A、必须使用try/catch语句处理异常,或用throws将其抛出 B.如果程序错误,必须使用try/catch语句处理异常 C.可以置之不理 D.只能使用try/catch语句处理 70.Java语言的类间的继承关系是(B)。 A)多重的B)单重的C)线程的D)不能继承 71.设有定义inti=6;,则执行以下语句后,i的值为(C)。 i+=i-1; A)10B)121C)11D)100 72.下列选项中,用于在定义子类时声明父类名的关键字是(C)。 A)interfaceB)packageC)extendsD)class 73.若已定义byte[]x={11,22,33,-66}; 其中0≤k≤3,则对x数组元素错误的引用是()。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 程序设计 练习题