java选择题题库.docx
《java选择题题库.docx》由会员分享,可在线阅读,更多相关《java选择题题库.docx(25页珍藏版)》请在冰豆网上搜索。
java选择题题库
选择题
第一章java语言概述
1在下列概念中,Java语言只保留了B.
A.运算符重载B.方法重载C.指针`D.结构和联合
2下列关于Java语言特性的描述中,错误的是___D_.
A.支持多线程操作
B.JAVA程序与平台无关
C.JAVA程序可以直接访问Internet上的对象
D.支持单继承和多继承
3下列关于JavaApplication程序在结构上特点的描述中,错误的是C
A.Java程序是由一个或多个类组成的
B.组成Java程序的若干个类可以放在一个文件中,也可以放在多个文件中
C.Java程序的文件名要与某个类名相同
D.组成Java程序的多个类中,有且仅有一个主类.
4Java程序经过编译后生成的文件的后缀是C
A..objB..exeC..classD..java
5下列关于运行字节码文件的命令行参数的描述中,正确的是A
A.第一个命令行参数被存放在args[0]中
B.第一个命令行参数被存放在args[1]中
C.命令行的命令字被存放在args[0]中
D.数组args[]的大小与命令行参数的个数无关。
6下列关于java语言面向对象特性描述中,错误的是___C___
A.具有封装性B.支持多态性,允许方法重载
C.支持单继承和多继承D.支持多接口
7下列关于java语言与C++语言异同点的描述中,错误的是______D
A.java语言取消了goto语句|
B.java语言中取消了指针
C.java语言不支持运算符重载
D.java语言仍保留了结构和联合
8列关于JavaApplication程序特点的描述中,错误的是A
A.该程序只能是一个名字与主类名相同的文件组成
B.该程序中仅有一个主方法,并被包含在某个类中
C.该程序中没有不属于某个类的方法
D.该程序实际上是一个类串
9使用Java语言编写的源程序保存时的文件扩展名是(B)。
A.classB.javaC.cppD.txt
10Java源文件和编译后的文件扩展名分别为(B)
(A).class和.java(B).java和.class
(C).class和.class(D).java和.java
11Java语言使用的字符码集是(D)
(A)ASCII(B)BCD
(C)DCB(D)Unicode
12下面关于main方法说明正确的是(B)
(A)publicmain(Stringargs[])
(B)publicstaticvoidmain(Stringargs[])
(C)privatestaticvoidmain(Stringargs[])
(D)voidmain()
13Javaapplication中的主类需包含main方法以下哪项是main方法的正确形参(B)
A、StringargsB、Stringargs[]C、CharargD、StringBufferargs[]
14下列关于Java语言和C++语言之间差别的描述中,不正确的一项是(A)
A.Java虽然提供了安全机制,但是还是没有C++安全
B.Java的内存管理优于C++的内存管理
C.Java没有全局变量,但是C++有全局变量
D.Java没有指针,但是C++的指针最灵活
15关于Java语言的内存回收机制,下列选项中最正确的一项是(C)
A.Java程序要求用户必须手工创建一个线程来释放内存
B.Java程序允许用户使用指针来释放内存
C.内存回收线程负责释放无用内存
D.内存回收线程不能释放内存对象
16下列关于Java语言和C++语言之间差别的描述中,不正确的一项是(A)
A.Java虽然提供了安全机制,但是还是没有C++安全
B.Java的内存管理优于C++的内存管理
C.Java没有全局变量,但是C++有全局变量
D.Java没有指针,但是C++的指针最灵活
17Java语言是一种(D)
A.面向机器的编程语言B.面向过程的编译型编程语言
C.面向问题的解释型编程语言D.面向对象的解释型编程语言
18下面的说法正确的是(C)。
A.Java语言里的线程不是对象
B.Java中任何可执行的类都需要main方法
C.Java语言的类都是java.1ang.Object的子类
D.double是Java语言的合法标识符
19关于Java语言的内存回收机制,下列选项中最正确的一项是(C)
A.Java程序要求用户必须手工创建一个线程来释放内存
B.Java程序允许用户使用指针来释放内存
C.内存回收线程负责释放无用内存
D.内存回收线程不能释放内存对象
第二章java语言语法基础
20java语言所用的字符集中字符是______B____位
A.8B.16C.32D.64
21下列关于标识符的描述中,正确的是____A___
A.标识符中可以使用下划线和美元符
B.标识符可以使用边接符和井号符
C.标识符中大小写字母是无区别的
D.标识符可选用关键字
22Java语言的各种分隔符中,非法的是_____D____
A.空白符B.分号C.逗号D.问号
23下列Java语言中可用的注释符,其中错误的是____C____
A.//B./*...*/C./**..**/D./**...*/
24Java语言中字符型数据的长度是_____B____位。
A8B.16C.32D.64
25下列描述的两种数据类型的长度不相等的是_____A_____
A.字符型和布尔型B.字节型和布尔型
C.短整型和字符型D.整型和单精度浮点型
26下列是Java语言中的复合数据类型,其中错误的是_____C___
A.数组B.接口C.枚举D.类
27下面是关于Java语言中数据类型的强制转换的描述,其中错误的是_____BC___
A.当数据类型从高转换为低时需要强制转换
B.强制转换时使用强制转换运算符,形如(<类型>)
C.浮点型数据强制转换为整形时,小数部分四舍五入
D.赋值操作中都要采用强制类型转换
28下列关于常量的描述中,错误的是_____BD_____
A.Java语言的常量有5种
B.浮点整形数据12.456是单精度
C.布尔型常量只有两个选值:
true和false
D.字符串常量含有结束符’\0’
29下列关于定义符号常量的描述中,错误的是_____A____
A.定义符号常量使用关键字const
B.定义符号常量时要赋初值
C.符号常量既可定义为类成员,又可在方法中定义
D.定义符号常量时必须给出数据类型-
30下列关于变量的默认值的描述,其中错误的是__BC__
A.定义变量而没有进行初始化时,该变量具有默认值
B.字符型变量的默认值为换行符
C.布尔型变量的默认值为true
D.变量的默认值是可以被改变的
31下列关于变量定义的描述中,正确的是____AC____
A.定义变量时,至少应指出变量的名字和类型
B.定义变量时没有给出初值,该变量可能是无意义值
C.定义变量时,同一个类型多个变量间可用逗号分隔
D.定义变量时,必须要给变量初始化
32下列关于变量作用域的描述,错误的是___D____
A.在某个作用域定义的变量,仅在该作用域内是可见的,而在该作用域外是不可见的。
B.在类中定义的变量的作用域在该类中的方法内是可以使用的
C.在方法中定义的变量的作用域仅在该方法内
D.在方法中作用域可嵌套,在嵌套的作用域中可以定义同名变量。
33下列关于开关语句的描述中,正确的是
A.开关语句中,default子句可以省略
B.开关语句中,case子句的<语句序列>中一定含有break语句
C.开关语句中,case子句和default子句都可以有多个
D.退出开关语句的唯一条件是执行break语句
34下列哪个编译没有警告或错误C
A.floatf=1.3;B.charc="a";
C.byteb=254;D.booleanb=null;
35下列表达式中,非法的是B
inta=5,b=6;doublec=1.1,d=2.2;
A.a+c+++dB.(a+c)--C.c<=?
c:
d
36下列循环语句的循环次数是D
inti=5;
do{
System.out.println(i--)
i--;
}while(i!
=0);
A.0B.1C.5D.无限
37下列关于Java语言的数组描述中,错误的是D
A.数组的长度通常用length表示
B.数组的下标从0开始
C.数组元素是按顺序存放在内存的
D.数组在赋初值和赋值时都不判界
38下列关于数组的定义形式,正确的是(B)
A.int[]a;a=newint;B.charb[];b=newchar[80];
C.int[]c=newchar[10];D.int[]d[3]=newint[2][];
39下列关字字符串的描述中,错误的是___B_____
A.Java语言中,字符串分为字符串常量和字符串变量两种
B.两种不同的字符串都是String类的对象|
C.Java语言中不再使用字符数组存放字符串
D.JavaApplication程序的main()的对数args[]是一个String类的对象数组,用它可存放若干个命令行参数。
40设有数组的定义int[]a=newint[3]则下面对数组元素的引用错误的是(C)。
Aa[0];Ba[a.length-1];
Ca[3];Dinti=1a[i];
41下面哪一个是Java中不合法的标识符(D)。
A$personsBtwoNum
C_myVarD*point
42下面哪个是非法的(B)
(A)intI=32;(B)floatf=45.0;
(C)doubled=45.0;(D)charc=‘u’
43以下代码段执行后的输出结果为(C)
intx=3inty=10
System.out.println(y%x);
A、-1B、2C、1D、3
44若有定义byte[]x={11,22,33,-66};其中0≤k≤3则对x数组元素错误的引用是(C)
Ax[5-3]Bx[k]Cx[k+5]Dx[0]
45以下哪个不是Java的原始数据类型(B)
A、intB、BooleanC、floatD、char
46有以下方法的定义请选择该方法的返回类型(D)。
ReturnTypemethod(bytex,doubley)
{
return(short)x/y*2;
}
A、byteB、shortC、intD、double
47有以下程序片段下列哪个选项不能插入到行1。
(D)
1.
2.publicclassInteresting{
3.//dosth
4.}
A、importjava.awt.*;B、packagemypackage;
C、classOtherClass{}D、publicclassMyClass{}
48下面哪些选项不可以用作变量名的首字符?
(C)
A.字母B.下划线(_)C.数字D.美圆符号($)
49下面的程序段输出的结果是(A)
Strings1="Abc",s2="Bcd";
System.out.println(pareTo(s2));
A.-1B.1C.falseD.true
50下列表达式哪些是正确的?
(C)
A.byte=340B.Boolean=1
C.longl=-2D.double=0.9239d
51下列方法定义中,方法头不正确的是( D)
A.publicintx(){...}B.publicstaticintx(doubley){...}
C.voidx(doubled)D.publicstaticx(doublea){...}
52执行下面语句,myArray数组的长度是____B___
int[]myArray=newint[3];myArray=newint[6];
A.3B.6C.9D.执行错误E.5
53下列关于int类型的说法中,正确的一个是(C)
A.int类型可以自动转换为所有的简单类型
B.int类型只能自动转换为float、long、double类型
C.103是合法的int类型常量
D.int类型包括有符号整型和无符号整型
54编译一个定义了两个类和三个方法的的Java源码文件,总共会产生几个字节码文件,这些字节码文件的扩展名是什么?
(D)
A.5个字节码文件,以".java"为扩展名
B.2个字节码文件,以".java"为扩展名
C.5个字节码文件,以".class"为扩展名
D.2个字节码文件,以".class"为扩展名
55现有一个变量声明为booleanb1;下面赋值语句中正确的是(A)
A.b1=true;B.b1=True;
C.b1="ture";D.b1=0;
56若有如下程序段:
intindex=1;
intfoo[]=newint[3];
intbar=foo[index]
intbaz=bar+index;
程序的执行结果正确的是(B)。
A.整型变量baz的值为0B.整型变量baz的值为1
C.整型变量baz的值为2D.执行有错误
57下列语句执行后,i的值是( C )
inti=2;
do{i*=i;}while(i<16);
A.4B.8C.16D.32
58下列说法中,正确的一个是(A)
A.接口属于复合数据类型B.接口属于简单数据类型
C.标识符的总的字符个数是有限的D.标识符就是保留字
59下列表达式哪些是正确的?
(C)
A.byte=340B.Boolean=1
C.longl=-2D.double=0.9239d
60有如下数组:
byte[]arrayl,array2[]
bytearray3[][]
byte[][]array4
假设每个变量都已初始化,以下哪一条语句会导致编译错误?
(A)
A.array2=arrayl;B.array2=array3;
C.array2=array4;D.A并且B
61下面哪条语句定义了5个元素的数组(A)
A、int[] a={22,23,24,25,12};B、inta[]=new int(5);
C、int [5] array;D、int [] arr;
62下面哪个语句不能定义一个字符变量( B )
A、char c1=’a’;B、char c2=” S ”
C、char c4=97D、char c3=’\u0041’;
第三章java语言面向对象的特征
63下列对封装性的描述中,错误的是_______B
A.封装体包含了属性和行为
B.封装体中的属性和行为的访问权限是相同的
C.被封装的某些信息在封装体外是不可见的
D.封装使得抽象的数据类型提高了可重用性
64下列关于继承性的描述中,错误的是C
A.一个类可以同时生成多个子类
B.子类继承了父类的所有成员
C.Java语言支持单继承和多重继承
D.Java语言通过接口可使子类使用多个父类的成员
65下列关于多态性的描述中,错误的是A
A.java语言允许运算符重载
B.java语言允许方法重载
C.java语言允许变量覆盖
D.多态性提高了程序的抽象性和简洁性
66在类的修饰符中,规定只能被同一包类所使用的修饰符是____B___
A.publicB.默认C.finalD.abstract
67在成员变量的修饰符中,规定只允许该类自身访问的修饰符是
A.privateB.publicC.默认D.protected
68在成员变量的修饰符中,规定访问权限包含类自身,同包的其他类和其它包中的子类的修饰符是:
D
A.privateB.publicC.默认D.protected
69下列关于构造方法的特点的描述中,错误的是A
A.不可重载B.方法名同类名
C.无返回值D.系统自动调用
70下列关于静态方法的描述中,错误的是D
A.在类体内说明静态方法用关键字static
B.静态方法可能处理静态变量或调用静态方法
C.静态方法不占用对象的内存空间,非静态方法占用对象的内存空间
D.静态方法只能类名调用
71下列对静态初始化器的描述中,错误的是D
A.静态初始化器是用来对类进行初始化的,而不是对某个对象初始化的
B.静态初始化器是由关键字static和一对花括号组成的语句组
C.静态初始化器不同于构造方法,它不是方法
D.初始化器是产生新对象时,由系统自动调用的
72下列关于抽象类的描述中,错误的是_______C___
A.抽象类是用修饰符abstract说明的
B.抽象类是不可以定义对象的
C.抽象类是不可以有构造方法的
D.抽象类通常要有它的子类
73下列关于类的继承性的描述中,错误的是D
A.继承是在已有的基础上生成新类的一种方法
B.子类继承父类的所有成员
C.Java语言要求了个子类只有一个父类
D.父类中成员的访问权限在子类中将被改变
74下列关于子类继承父类的成员的描述中,错误的是A
A.子类中继承父类中的所有成员都可以直接访问
B.子类中定义的与父类同名的变量时,使用自己定义的变量
C.当子类中出现成员方法头与父类的方法头相同的方法时,子类成员方法覆盖父类了成员方法
D.方法重载是编译时处理的,而方法的覆盖是在运行时处理的
75下列关于接口的描述中,错误的是B
A.接口实际上是由常量和抽象方法构成的特殊类
B.一个类只允许继承一个接口
C.定义接口使用的关键字是interface
D.在继承接口的类中,通常要给出接口袋定义的抽象方法的具体实现
76下列关于包的描述中,错误的是A
A.包是一种特殊的类C.若干个类的集合
C.包是使用package语句创建的D.包有有名包和无名包两种
77下列常用包中,存放用户图形界面类库的包是___A___
A.java.awtB.java.langC.java.utilD.java.io
78下列是系统提供的常用的类,所有类的父类的类是____B____
A.MathB.ObjectC.SystemD.String
79下列关于方法的描述中,错误的是___B___
A.方法只有类的成员方法,再无其他方法
B.方法可以重载和内联
C.对象作为方法的参数时,参数传递的是对象的地址值
D.方法的返回值是通过return来实现的
80在下列关于静态成员的描述中,错误的是___D____
A.静态成员有成员变量和方法两种
B.静态成员的修饰符是static
C.静态成员可以使用类名来访问,也可使用对象名的访问
D.静态方法可以访问静态成员变量也可以访问非静态的成员变量。
81在下列关于类的继承的描述中,错误的是____B___
A.子类只允许一个父类
B.一个父类只能生成一个子类
C.继承不改变成员访问权限
D.私有成员和构造方法不能继承
82在下列关于方法的重载和覆盖的描述中,错误的是__D____
A.方法重载是指在面一个类中允许出现方法参数、个数、顺序不同而方法名相同的若干个方法
B.方法覆盖是指在父类和子类之间出现的方法头相同而方法体不同的多个方法
C.方法重载是在编译时进行选择的
D.方法覆盖是在编译时进行选择的
83给出下面代码关于该程序以下哪个说法是正确的(C)
publicclassPerson{
staticintarr[]=newint[5];
publicstaticvoidmain(Stringa[])
{System.out.println(arr[0]);}
}
A、编译时将产生错误B、编译时正确运行时将产生错误
C、输出零D、输出空
84以下有关构造方法的说法正确的是(A)
A一个类的构造方法可以有多个
B构造方法在类定义时被调用
C构造方法只能由对象中的其它方法调用。
D构造方法可以和类同名也可以和类名不同
85在Java中一个类可同时定义许多同名的方法这些方法的形式参数的个数、类型或顺序各不相同传回的值也可以不相同。
这种面向对象程序特性称为(C)
A隐藏B重写C重载DJava不支持此特性
86以下关于继承的叙述正确的是(A)。
A、在Java中类只允许单一继承
B、在Java中一个类只能实现一个接口
C、在Java中一个类不能同时继承一个类和实现一个接口
D、在Java中接口只允许单一继承
87关于抽象方法的说法正确的是()
(A)可以有方法体(B)可以出现在非抽象类中
(C)是没有方法体的方法(D)抽象类中的方法都是抽象方法
88如果一个类的成员变量只能在所在类中使用则该成员变量必须使用的修饰是()
(A)public(B)protected(C)private(D)static
89对于一个Java源文件import,class定义以及package正确的顺序是(A)
(A)package,import,class(B)class,import,package
(C)import,package,class(D)package,class,import
90为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它该方法头的形式为(A)。
Astaticvoidmet