javaSE选择题50道判断题30道.docx
《javaSE选择题50道判断题30道.docx》由会员分享,可在线阅读,更多相关《javaSE选择题50道判断题30道.docx(19页珍藏版)》请在冰豆网上搜索。
javaSE选择题50道判断题30道
一、不定项选择题:
(50题)
1.下列关于JDK、JRE和JVM的描述,正确的是?
D
A.JRE中包含了JDK,JVM中包含了JRE
B.JRE中包含了JDK,JDK中包含了JVM
C.JDK中包含了JRE,JVM中包含了JRE
D.JDK中包含了JRE,JRE中包含了JVM
2.以下关于JVM的叙述,正确的是?
AC
A.JVM运行于操作系统之上,它依赖于操作系统
B.JVM运行于操作系统之上,它与操作系统无关
C.JVM支持Java程序运行,它能够直接运行Java字节码文件
D.JVM支持Java程序运行,它能够直接运行Java源代码文件
3.JVM在执行一个Java类时,大致采用以下过程?
A
A.装载类一>校验类一>执行类中的代码
B.装载类一>执行类中的代码一>校验类
C.校验类一>装载类一>执行类中的代码
D.执行类中的代码一>装载类一>校验类
4.以下关于Java文件名的叙述,正确的有?
AD
A.Java源文件的扩展名应为.java
B.Java字节码文件的扩展名应为.java
C.一个Java源文件中只能包含一个Java类
D.Java源文件的文件名应与文件中被public修饰的类的类名一致
5.下列哪项不是int类型的字面量?
C
A.20
B.077
C.\u03A6
D.0xABBC
6.下列哪项不属于Java语言的基本数据类型?
B
A.int
B.String
C.double
D.boolean
7.下列哪项不是有效的标识符?
AC
A.2test
B.userName
C.$car.text
D._password
8.现有如下五个声明:
Line1:
int_hi=6;
Line2:
int$dollars=8;
Line3:
int%opercent=9;
Line4:
intbig=Integer.getlnteger("7");
Line5:
inta_really_really_really_long_variable_name=5;
哪行无法通过编译?
B
A.Line1
B.Line3
C.Line4
D.Line5
9.表达式:
doubled=1-2/5*5+2*5;d的值是哪项?
D
C.9
D.11
10.现有代码片段:
Strings="123";
Strings1=s+456;
请问s1的结果是哪项?
A
A.123456
B.579
C.编译错误
D.运行时抛出异常
11.现有:
1.classTest4{
2.publicstaticvoidmain(String[]args){
3.booleanx=false;
4.booleany=true;
5.shortz=42;
6.
7.if((z++==42)&&(y==true))z++;
8.if((x==false)||(++z==45))z++;
9.
10.System.out.println("z="+z);
11.}
12.}
结果为:
C
A.z=42
B.z=44
C.z=45
D.z=46
12.下列有关数组的声明中,正确的是哪项?
ABC
A.ints[];
C.int[]s={l,2,3,4,5};
B.ints[]=newint[]{1,2,3,4,5};
D.int[]s=newint[5]{1,2,3,4,5};
13.已知数组array,其最后一个元素的下标是?
D
A.array.length
B.array.length()-l
C.array.size-l
D.array.length-1
14.程序:
classTestApp{
publicstaticvoidmain(String[]args){
intx=5;
switch(x){
casel:
case2:
case3:
System.out.println(“一季度”);
break;
case4:
case5:
case6:
System.out.println(“二季度”);
break;
default:
System.out.println(“三季度以上”);
break;
)
}
)
上述程序运行后的结果是哪项?
B
A.一季度
B.二季度
C.三季度以上
D.无输出
15.为将数组myArray的长度由3改为6,现采取以下编码:
D
int[]myArray=newint[3];
myArray=newint[6];
代码执行后,以下叙述哪项是正确的?
A.数组myArray的长度已由3改为6,其中前3个元素的值不变,后3个元素的值为空。
B.数组myArray的长度已由3改为6,其中前3个元素的值丢失,后3个元素需再经过
初始化后才能使用。
C.数组myArray的长度没有变化。
D.数组myArray的长度已由3改为6,原来3个元素的值全部丢失。
16.现有:
1.classRectangle{
2'publicstaticvoidmain(string[]args){
3.int[]x=(1,2,3);
4.x[0]=x[1]>1?
x[2]:
0
5.System.out.println(x[0]);
6.}
7.}
结果为:
A
A.3
B.2
C.1
D.0
17.现有:
1.classOutput(
2.publicstaticvoidmain(String[]args){
3.inti=5:
4."4"+++i+"");
5.(i+++5+"7");
6.(i+"8");
7.}
8.}
结果为:
B
A.4511778
B.4611778
C.4512778
D.4612778
18.下列有关类、对象和实例的叙述,正确的是哪一项?
D
A.类就是对象,对象就是类,实例是对象的另一个名称,三者没有差别
B.对象是类的抽象,类是对象的具体化,实例是对象的另一个名称
C.类是对象的抽象,对象是类的具体化,实例是类的另一个名称
D.类是对象的抽象,对象是类的具体化,实例是对象的另一个名称
19.下列类Account的构造方法中,声明正确的是?
A
A.Account(Stringname){}
B.Account(Stringname)
C.Account(name){}
D.NewAccount(Stringname){}
20.下列有关类声明的代码片段,哪项是正确的?
A
A.packageschool;
importjava.sql.*;
classStudent{
}
B.importjava.sql.*;
packageschool;
classStudentf
)
C.packageschool;
classStudent{
}
importjava.sql.*j
D.packageschool;
importjava.sql.*;
privateStringname;
classStudent{
}
21.下列哪些是方法publicintadd(inta)的重载方法?
ABD
A.publicintadd(longa);
B.publicvoidadd(inta);
C.publicvoidadd(longa);
D.publicintadd(floata);
22.现有如F包结构:
com
|一一X
||一一Alpha.class
||
||一一y
I|一一Beta.class
|
|l--Gamma.class
和类:
classTest{Alphaa;Betab;Gammac;}
哪些必须加入到类Test中,以使其通过编译?
BCD
A.packagey;
B.packagecom;
C.import;
D.importcom.x.*;
23.现有2个文件:
1.packagex;
2.publicclassX{
3.publicstaticvoiddoX(){"doX");}
4.}
和:
1.classFind{
2.publicstaticvoidmain(String[]args){
3.//insertcodehere
4.}
5.}
哪些行插入到类Find的第3行将编译并产生输出“doX”?
CD
A.doX();
B.X.doX();
C.;
D.x.XmyX=newx.X();myX.doX();
24.在子类中调用父类中被覆盖的方法时需要使用哪项关键字?
B
A.this
B.super
C.new
D.以上都不是
25.如果想要一个类不能被任何类继承的话,需要使用哪个关键字来修饰该类?
D
A.abstract
B.new
C.static
D.final
26.现有
publicclassParentt
publicvoidchange(intx){}
)
publicclassChildextendsParent{
//覆盖父类change方法
}
下列哪个声明是正确的覆盖了父类的change方法?
C
A.protectedvoidchange(intx){}
B.publicvoidchange(intx,inty){}
C.publicvoidchange(intx){}
D.publicvoidchange(Strings){}
27.现有:
1.classDog{}
2.classHarrierextendsDog{}
3.
4.classDogTest{
5.publicstaticvoidmain(String[]args){
6.Dogdl=newDog();
7.Harrierhl=newHarrier();
8.Dogd2=hl;
9.Harrierh2=(Harrier)d2;
10.Harrierh3=d2;
11.}
12.}
下面哪一项是正确的?
D
A.2个Dog对象被创建
B.2个Harrier对象被创建
C.3个Harrier对象被创建
D.编译失败
28.现有:
1.classOver{
2.intdolt(longx){return3;}
3.}
4.
5.classUnderextendsOver{
6.//insertcodehere
7.}
和四个方法:
shortdolt(inty){return4;}
intdolt(longX,longy){return4;}
privateintdolt(shorty){return4;}
protectedintdolt(longx){return4;}
分别插入到第6行,有几个可以通过编译?
D
A.1
B.2
C.3
D.4
29.现有:
1.classHorseRadish{
2.//insertcodehere
3.protectedHorseRadish(intx){
4.("bokchoy");
5.}
6.}
7.classWasabiextendsHorseRadish{
8.publicstaticvoidmain(String[]args){
9.Wasabiw-newWasabi();
10.}
11.}
分别插入到第2行,哪两项允许代码编译并产生”bokchoy”输出结果?
AD
A.protectedHorseRadish(){this(42);}
B.protectedHorseRadish(){}
C.//不用加入任何代码
D.protectedHorseRadish(){newHorseRadish(42);}
30.下列有关抽象类的叙述正确的是哪项?
B
A.抽象类中一定含有抽象方法
B.抽象类的声明一定包含abstract关键字
C.抽象类既能被实例化也能被继承
D.抽象类中只能包含抽象方法,不能包含实体方法
31.下列有关抽象方法叙述正确的是哪项?
BD
A.抽象方法和普通方法一样,只是前面多加一个修饰符asbtract
B.抽象方法没有方法体
c.抽象方法可以包含存任何类中
D.包含抽象方法的类的具体子类必须提供具体的覆盖方法
32.下列关于接口的定义哪项是正确的?
CD
A.interfaceC{inta;}
B.publicinterfaceAimplementsB{}
C.publicinterfaceA{inta();}
D.abstractinterfaceD{}
33.现有:
1.interfaceAnimalf
2.voideat();
3.}
4.
5.//insertcodehere
6.
7.publicclassHouseCatimplementsFeline{
8.publicvoideat(){}
9.}
和以下三个接口声明:
interfaceFelineextendsAnimal()
interfaceFelineextendsAnimal{voideat();}
interfaceFelineextendsAnimal{voideat(){}}
分别插入到第5行,有多少行可以编译?
C
A.0
B.1
C.2
D.3
34.下列有关多态的叙述正确的是哪项?
AC
A.父类的引用指向子类的实例是一种多态
B.子类的引用指向子类的实例是一种多态
C.接口的引用指向实现该接口类的实例是一种多态
D.抽象类的引用指向抽象类的实例是一种多态
35.Java中方法绑定有哪些形式?
AB
A.编译时刻绑定
B.运行时刻绑定
C.静态绑定
D.私有绑定
36.表达式"hello"instanceofString返回的值是哪项?
A
A.true
B.false
C.1
D.0
37.求平方根方法publicstaticdoublesqrt(doublea)可以传递的参数ABD
类型有哪些?
A.byte
B.float
C.String
D.long
38.涉及类MyClass的方法publicvoidfind(MyClassa),
那么该方法可接收的实际参数的类型可以是哪些?
AB
A.MyClass类的类型
B.MyClass子类的类型
C.Object类型
D.所有接口
39.Java语言中异常的分类是哪项?
A
A.运行时异常和编译时异常
B.受检异常和编译时异常
C.错误和异常
D.错误和运行时异常
40.关于try...catch...finally结构,描述正确的是哪项?
A
A.try最少有一个catch
B.try最多有一个catch
C.最少有一个finally
D.最多有一个finally
41.创建线程的方式?
BC
A.继承Runnable
B.实现Runnable
C.继承Thread
D.实现Thread
42.启动一个线程的方法是哪项?
C
A.join()
B.run()
C.start()
D.sleep()
43.以下关于File类的叙述,哪项正确?
AD
A.File类位于java.io包中
B.创建一个File类的实例将导致打开指定文件进行读写
C.File实例不能用于封装目录
D.File实例封装了指定文件的信息
44.下列哪项是Java语言中所定义的字节流?
AB
A.OutputStream
B.InputStream
C.Reader
D.Writer
45.为了从文本文件中逐行读取内容,应该使用哪个处理流对象?
A
A.BufferedReader
B.BufferedWriter
C.BufferedInputStream
D.BufferedOutputStream
46.集合API中Set接口的特点是哪项?
D
A.不允许重复元素,元素有顺序
B.允许重复元素,元素无顺序
C.允许重复元素,元素有顺序
D.不允许重复元素,元素无顺序
47.List接口的特点是哪项?
C
A.不允许重复元素,元素无顺序
B.不允许重复元素,元素无顺序
C.允许重复元素,元素有顺序
D.允许重复元素,元素无顺序
48.实现了List接口的类是哪项?
ACD
A.ArrayList
B.HashTable
C.Vector
D.Stack
49.哪些是同步的?
BC
A.
B.
C.
D.
50.现有如下类型:
a-
b-
c-
d-
和定义:
1-使用本接口,允许用户控制集合中每个元素的插入位置。
2-使用本集合,确保用户可以按照递增或元素的自然顺序遍历集合。
3-本具体类型允许空元素及基于索引的访问。
4-本集合是同步的。
哪一组匹配是对的?
B
A.2描述d;3描述b。
B.1描述b;3描述c。
C.3描述a;4描述b。
D.4描述a;2描述c。
二、判断题(30题):
1、Java语言有三种技术平台,分别是JavaSE、JavaME、JavaEE(T)
2、Java是一门高级计算机语言。
(T)
3、Java语言具体跨平台的特性(T)
4、JDK工具中自带了一个JRE工具(T)
5、数组的遍历是指依次访问数组中的每个元素(T)
6、continue语句只用于循环语句中,它的作用是跳出循环。
(F)
7、方法的返回值类型可以定义也可以不定义(F)
8、比较运算符用于对两个数值或变量进行比较,其结果是一个布尔值(T)
9、若x=5,则表达式(x+5)/3的值是3(T)
10、标识符可以为关键字(F)
11、-5%3的运算结果是2(F)
12、在Java中,小数会被默认是double类型的值(T)
13、封装就是隐藏对象的属性和实现细节,仅对外提供公有的方法。
(T)
14、Java程序中,可以使用关键字new创建新的对象。
(T)
15、静态变量可以被类和对象调用。
(T)
16、若int[][]arr=newint[][]{{1},{2,3,4},{5,6}},则arr[1][1]的结果为3(T)
17、运算符“|”和“||”都表示“或”操作(T)
18、instanceof关键字可以用于判断一个对象是否为某个类(或接口)的实例或者子类实例(T)
19、抽象方法必须定义在抽象类中,所以抽象类中的方法都是抽象方法(F)
20、当intx=3,y=4时,表达式booleanb=x==y?
true:
false的结果是false(T)
21、while、do…while、for循环语句都可以进行嵌套,并且它们之间也可以互相嵌套(T)
22、面向对象的特点主要可以概括为封装性、继承性和重载性(F)
23、所有接口都继承自Object类(F)
24、与普通方法一样,构造方法也可以重载。
(T)
25、代码int[][]arr=newint[][]可以正确的定义一个二维数组(F)
26、对类Calendar可以直接进行实例化。
(F)
27、String类的equals()方法和“==”的作用是一样的。
(F)
28、final修饰的静态方法可以被类名直接调用(T)
29、抽象类中不一定有抽象函数,但抽象函数一定在抽象类中(T)
30、在Java中,子类可以访问父类的所有成员(F)