东大19秋学期《JAVA语言程序设计Ⅰ》在线作业2
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 60 分)
1.下面的代码段中,执行之后i 和j 的值是什么? int i = 1; int j; j = i++;
A.1, 1
B.1, 2
C.2, 1
D.2, 2
答案: C
2.设有下面的一个类定义: class AA { static void Show( ){ System.out.println("我喜欢Java!"); } } class BB { void Show( ){ System.out.println("我喜欢C++!"); } } 若已经使用AA类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的:( )
A.Show( ) b.Show( )
B.AA.Show( ) BB.Show( )
C.AA.Show( ) b.Show( )
D.Show( ) BB.Show( )
答案: C
3.设有下面的两个类定义: class AA { void Show(){ System.out.println("我喜欢Java!"); } class BB extends AA { void Show(){ System.out.println("我喜欢C++!"); } 则顺序执行如下语句后输出结果为:( ) AA a; BB b; a.Show(); b.Show();
A.我喜欢Java! 我喜欢C++!
B.我喜欢C++! 我喜欢Java!
C.我喜欢Java! 我喜欢Java!
D.我喜欢C++! 我喜欢C++!
4.已知如下代码: boolean m = true; if ( m = false ) System.out.println("False"); else System.out.println("True"); 执行结果是什么?
A.False
B.True
C.编译时出错
D.运行时出错
答案:
5.给出下列的代码,哪行在编译时可能会有错误? ① public void modify(){ ② int i, j, k; ③ i = 100; ④ while ( i > 0 ){ ⑤ j = i * 2; ⑥ System.out.println (" The value of j is " + j ); ⑦ k = k + 1; ⑧ } ⑨ }
A.4
B.6
C.7
D.8
答案:
6.请选择以下代码的正确的重载构造器。 class Happy { Happy() { } }
A.public void Happy(){}
B.public Happy(int c){}
C.protected Happy(){}
D.void Happy(){}
答案:
7.下列语句序列执行后,j 的值是( )。 Int j=3, i=2; while( --i!=i/j ) j=j+2;
A.2
B.4
C.5
D.6
答案:
8.在程序的源文件开始处有下面一行程序: package awt;
A.结果是一个编译错误,因为Java已经定义了一个awt包
B.说明这个文件里的所有的类都应该包含在java.awt包里
C.说明这个文件里的所有的类都应该包含在自己定义的awt包里
D.导入你自己定义的awt包里的所有类
答案:
9.下面程序的输出结果是什么? class C1{ static int j=0; public void method(int a){ j++; } } class Test extends C1{ public int method(){ return j++; } public void result(){ method(j); System.out.println(j+method()); } public static void main(String args[]){ new Te
A.0
B.1
C.2
D.3
答案:
10.下面的语句的作用是:( )。 Vector MyVector = new Vector(100,50);
A.创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50。
B.创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50。
C.创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
D.创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
答案:
11.下列语句序列执行后,a的值是( )。 int a=13; a%=a/5;
A.3
B.13
C.1
D.169
答案:
12.如果你有下面的类定义 abstract class Shape{ abstract void draw(); } 请问,在试图编译下面的类定义时会发生什么情况? class Square extends Shape{ }
A.都可以成功编译
B.Shpe可以编译,而Square不能
C.Square可以编译,而Shape不能
D.Shape和Square都不能编译
答案:
13.顺序执行下列程序语句后,则b的值是 String a="Hello"; String b=a.substring(0,2);
A.Hello
B.hello
C.Hel
D.null
答案:
14.下列代码中,将引起一个编译错误的行是 1)public class Test{ 2) int m,n; 3) public Test() {} 4) public Test(int a) {m=a;} 5) public static void main(String args[]){ 6) Test t1,t2; 7) int j,k; 8) j=0;k=0; 9) t1=new Test(); 10) t2=new Test(j,k); 11) } 12
A.第3行
B.第5行
C.第6行
D.第10行
答案:
15.若有循环: int x=5,y=20; do{ y-=x; x++; }while(++x<--y);则循环体将被执行( )。
A.0次
B.1次
C.2次
D.3次
答案:
16.给出下列代码,则数组初始化中哪项是不正确的? byte[] array1,array2[]; byte array3[][]; byte [][] array4;
A.array2 = array1
B.array2=array3
C.array2=array4
D.array3=array4
答案:
17.设有下面两个类的定义: class Person { long id; // 身份证号 String name; // 姓名 } class Student extends Person { int score; // 入学总分 int getScore(){ re
A.包含关系
B.继承关系
C.关联关系
D.无关系,上述类定义有语法错误
答案:
18.给定下面的类: public class Example{ String str=new String(“good”); char ch[]={'a','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex.change(ex.str,ex.ch); System.out.println(ex.str+”and”+ex.ch); } public void
A.good and abc
B.good and gbc
C.test ok and abc
D.test ok and gbc
答案:
19.下面程序运行后I的结果是什么? Class sree { fun(){ static int I =0; I++; } public static void main(String args[]) { sree obj=new sree(); obj.fun(); obj.fun(); }
A.编译错误
B.运行时错误
C.1
D.2
答案:
20.设有下面两个赋值语句: a = Integer.parseInt("1024"); b = Integer.valueOf("1024").intValue(); 下述说法正确的是( )。
A.a是整数类型变量,b是整数类对象。
B.a是整数类对象,b是整数类型变量。
C.a和b都是整数类对象并且它们的值相等。
D.a和b都是整数类型变量并且它们的值相等。
答案:
二、多选题 (共 10 道试题,共 40 分)
21.如果有以下代码,哪几个数字能产生输出 "Test2" 的结果? Switch(x){ case 1: System.out.println("Test1"); case 2: case 3: System.out.println("Test2"); break;} System.out.println("Test3"); }
A.0
B.1
C.2
D.3
答案:
22.选择所有有效的构造函数。 class Happy { } }
A.public void Happy(){}
B.public Happy(int c){}
C.protected Happy(){}
D.public int Happy(){}
E.void Happy(){}
答案:
23.给出下面的代码段: public class Base{ int w, x, y ,z; public Base(int a,int b) { x=a; y=b; } public Base(int a, int b, int c, int d) { //赋值 x=a, y=b w=d; z=c; } } 在代码说明//赋值 x=a, y=b处写入如下哪几行代码是正确的?
A.Base(a,b)
B.x=a,y=b;
C.x=a;y=b;
D.this(a,b);
答案:
24.已知如下代码: switch (m) { case 0: System.out.println("Condition 0"); case 1: System.out.println("Condition 1"); case 2: System.out.println("Condition 2"); case 3: System.out.println("Condition 3");break; default: System.out.println("Other Condition"); } 当m 的
A.0
B.1
C.2
D.3
E.4
F.以上都不是
答案:
25.下面代码执行后的输出是什么? outer: for(int i=0;i<3; i++) inner: for(int j=0;j<2;j++) { if(j==1) continue outer; System.out.println(j+ “ and “+i); }
A.0 and 0
B.0 and 1
C.0 and 2
D.1 and 0
E.1 and 1
F.1 and 2
G.2 and 0
H.2 and 1
I.2 and 2
答案:
26.已知如下代码: public class Test { public static void main(String arg[]) { int i = 5; do { System.out.println(i); } while (--i>5) System.out.println("finished"); } } 执行后的输出结果包括什么?
A.5
B.4
C.6
D.finished
E.什么都不输出
答案:
27.请选出创建数组的正确语句。
A.float f[][] = new float[6][6];
B.float []f[] = new float[6][6];
C.float f[][] = new float[][6];
D.float [][]f = new float[6][6];
答案:
28.已知如下类说明: public class Test { private float f = 1.0f; int m = 12; static int n=1; public static void main(String arg[]) { Test t = new Test(); // 程序代码… } } 如下哪个使用是正确的?
A.t.f
B.this.n
C.Test.m
D.Test.n
答案:
29.针对下面的程序,那些表达式的值是true? Class Aclass{ private long val; public Aclass(long v){val=v;} public static void main(String args[]){ Aclass x=new Aclass(10L); Aclass y=new Aclass(10L); Aclass z=y; long a=10L; int b=10; } }
A.a==b;
B.a==x;
C.y==z;
D.x==y;
E.a==10.0;
答案:
30.你怎样从下面main()的调用中访问单词“kiss”? java lyrics a kiss is but a kiss
A.args[0]
B.args[1]
C.args[2]
D.args[3]
E.args[4]
F.args[5]
答案: