选择题
答题要求:单选题,每题只有一个正确答案,选择正确给分,不正确不给分。
1、 下面( A )数据类型可用于main()方法中传递的参数
A、String B、Integer C、Boolean D、Variant
2、以下的选项中能正确表示Java语言中的一个整型常量的是( B )
A、12.B、-20 C、1,000 D、4 5 6
3、下列的变量定义中,正确的是( D )
A、boolean b1="true"; B、float x=6.6;
C、byte i=200; D、double y;
4、在屏幕上显示的消息正确的语句是(A)
A、System.out.println("I am Java Expert");
B、system.out.println("I am Java Expert");
C、System.Out.Println("I am Java Expert");
D、System.out.println('I am Java Expert');
5、下面(B)命令可用于编译Java程序
A、java B、javac C、appletviewer D、javadoc
6、Java编译器会将Java程序转换为(A)
A、字节码B、可执行代码
C、机器代码D、以上所有选项都不正确
7、以下字符常量中不合法的是( C )
A、'@' B、'&' C、"k" D、'整'
8、以下的选项中能正确表示Java语言中的一个double型常量的是(C)
A、Float.MIN_VALUE B、1.8e-6F
C、2.0 D、'abc'
9、以下的变量定义语句中,合法的是(C)。
A、float $_*5= 3.4F; B、byte b1= 15678;
C、int $abc=5; D、int class="5";
10、在一个类中定义的成员变量和成员方法时,不允许(A)。
A. 两个成员变量名相同.
B. 成员变量与成员方法名相同.
C. 两个成员方法名相同
D. 成员方法中的参数与成员变量名相同
11、下列叙述正确的是 (B)
A. 在类中的构造方法的名字与类的名字相同,而且不能重载
B. 在类中的构造方法的名字与类的名字相同,但没有返回类型.
C. 在类中的构造方法的名字与类的名字相同,而且有返回类型.
D. 在类中的构造方法的名字与类的名字相同,而且不能初始化.
12、Java application中的主类需包含main方法,main方法的返回类型是什么?(D)
A、int B、float C、double D、void
13、给出如下代码:
class Test{
private int m;
public static void fun() {
// some code...
}
}
如何使成员变量m 被函数fun()直接访问?(C)
A、将private int m改为protected int m
B、将private int m改为public int m
C、将private int m改为static int m
D、将private int m改为int m
14、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为(C)。
A、隐藏 B、覆盖 C、重载D、Java不支持此特性
15、执行下面的程序,输出结果是(B)。
public class Test {
int x= 12;
public void method(int x) {
x+=x;
System.out.println(x);
}
public static void main(String[] args){
Test t = new Test();
t.method(5);
}}
A. 5 B. 10 C. 12 D. 17 E. 24
16、若在某一个类定义中定义有如下的方法:final void aFinalFunction( );
则该方法属于( C)。 。
A. 本地方法. B.解态方法. C.最终方法D.抽象方法
17、下列叙述正确的是 (D)
A. 子类可以继承父类的所有成员。
B.. 除了继承父类的成员以外,子类不可以创建自己的成员。
C. 当实例化子类时,父类的构造方法不被调用。
D. 子类只能继承父类的非私有成员。.
18、某java程序的类定义如下: public class MyClass extends BaseClass{ }
则该java源文件在存盘时的源文件名应为如下哪一种:( D )
A. myclass.java B. Myclass.java C. MYCLASS.java D. MyClass.java
19、给出如下代码:
class A{
public A(){
System.out.print("A");
}
}
public class B extends A{
public B(){
System.out.print("B");
}
public static void main(String[ ] args){
new B( );
}
}
程序的输出结果( A )
A、AB B、A C、B D、BA
20、以下哪个接口的定义是正确的?(D)。
A、 interface A
{ void print() { } ;}
B、 abstract interface A
{ void print() ;}
C、 abstract interface A extends I1, I2 //I1、I2为已定义的接口
{ abstract void print(){ };}
D、 interface A
{ void print();}
21、下面选项中能把字符串转换成float类型的是?(B)
A. float value = new Float(str);
B. float value = Float.parseFloat(str);
C. float value = Float.floatValue(str);
D. float value = (new Float()).parseFloat(str)
22、在某个类中存在一个方法:void getSort(int x),以下能作为这个方法的重载的声明的是( C )
A. public get (float x)
B. int getSort(int y)
C. double getSort(int x,int y)
D. void get(int x,int y)
23、下边程序运行的输出结果是(B)
class Base{
Base(){System.out.print("Base");}
}
public class Alpha extends Base {
public static void main(String[] args){
new Alpha();
new Base();
}
}
A、Base B、BaseBase C、程序编译失败D、程序运行但没有任何输出
24、下列说法正确的是(C)。
A. 一个子类可以有多个父类,一个父类也可以有多个子类
B. 一个子类可以有多个父类,但一个父类只可以有一个子类
C. 一个子类可以有一个父类,但一个父类可以有多个子类
D. 上述说法都不对
25、关于下面程序片段,(B)的结论是正确的。
String a = "Java"; String b = "Java";
String x = "Ja"; String y = "va";
String c = x + y;
A、a和b指向同一个实例对象,a和c指向同一个实例对象
B、a和b指向同一个实例对象,a和c不指向同一个实例对象
C、a和b不指向同一个实例对象,a和c指向同一个实例对象
D、a和b不指向同一个实例对象,a和c不指向同一个实例对象
26、下面这段代码会产生(C)个String对象。
String s1 = "hello"; String s2 = s1.substring(2, 3);
String s3 = s1.toString(); String s4 = new StringBuffer(s1).toString();
A、1 B、2 C、3 D、4
27、设有定义:String s=”World”;,下列语句错误的是(D)。
A、int m=s.indexOf(‘r’); B、char c=s.charAt(0); C、int n=s.length(); D、String str=s.append();
28、已知int i = 2147483647; ++i;则i的值等于(A)。
A、-2147483648 B、2147483647 C、2147483648 D、-1
29、若x = 5,y = 8,则表达式x|y的值为(B)。
A、3 B、13 C、0 D、5
30、执行String[ ] s=new String[10];语句后,哪个结论是正确的?(B)
A、s[0]为 未定义B、s.length为10 C、s.length为11 D、s[10]为""
31、下列说法不正确的是(D)。
A、表达式“1+2>3”的值是false B、表达式“1+2||3”是非法的表达式
C、表达式“i+j=1”是非法的表达式D、表达式“1+2>3”的值是true
32、若String s = "hello"; String t = "hello"; char c[] = {'h','e','l','l','o'} ;则下列哪个表达式返回false?(C)
A、s.equals(t); B、t.equals(new String("hello")); C、t.equals(c); D、s==t;
33、执行完下面程序片段后,(B)的结论是正确的。
int a, b, c; a = 1; b = 2; c = (a + b > 3 ? a++ : b++);
A、a的值是2,b的值是3 B、a的值是1,b的值是3
C、a的值是1,b的值是2 D、c的值是false
34、下面程序片段输出的是(D)。
int i = 0, j = 9;
do {
if(i++ > --j) break;
} while(i < 4);
System.out.println("i = " + i + " and j = " + j);
A、i = 4 and j = 4 B、i = 5 and j = 5 C、i = 5 and j = 4 D、i = 4 and j = 5
35、设有定义“int k=3;”,语法正确且值为true的表达式是(D)。
A、k=3; B、k++>3; C、k--==3&&k++==3; D、k++==3||++k>3;
36、若有定义int a = 2;则执行完语句a -= a * a;后,a的值是(C )。
A、0 B)、4 C、-2 D、 –4
37、下列语句序列执行后,j的值是(A )。int j=1;
for( int i=5; i>0; i-=2 ) j*=i;
A、15 B、1 C、60 D、0
38、以下由 for 语句构成的循环执行的次数是( B )。
for ( int i = 0; true ; i++) ;
A、有语法错,不能执行B、无限次C、执行1次D、一次也不执行
39、下列语句序列执行后,j的值是(B )。
int j=9, i=6;
while( i-- >3 ) --j;
A) 5 B) 6 C) 7 D) 8
40. 若