|
+ _2 Z6 Z2 A* L* n13秋学期《JAVA语言程序设计Ⅰ》在线作业2, y* W' }8 G o% ]
7 J E! ]! A/ }! z, n& X/ a
单选题 多选题 * c2 ~1 F t9 E% n- X2 Y" W
5 l0 o7 q1 t, g) Y' ^; L, j& n# {1 [7 S
一、单选题(共 20 道试题,共 60 分。)
% u" v8 `! R5 }1. 下列程序的功能是在监控台上每隔一秒钟显示一个字符串“Hello”,能够填写在程序中下划线位置,使程序完整并能正确运行的语句是 public class Test implements Runnable{ public static void main(String args[]){ Test t=new Test(); Thread tt=new Thread(t); tt.start(); } public void run(){ for(;;){ try{
( d( P) j9 m; d7 f0 _9 H: Q5 f) }A. sleep(1000) InterruptedException
- E( K/ y0 E; S8 j1 ^3 c( B9 HB. sleep(1000) RuntimeException
; H1 k8 x% r* d+ _5 n1 {C. Thread.sleep(1000) RuntimeException
4 k7 G6 G9 ?% H9 b% Q0 `! uD. Thread.sleep(1000) InterruptedException f; m, I) F( c% u& K
-----------------选择:D
" S3 f l, c$ } Z8 F2. 已知如下的命令执行 java MyTest a b c 请问哪个语句是正确的?
l, f) y: C( DA. args[0] = "MyTest a b c"
( U- t6 t$ j* k8 iB. args[0] = "MyTest"
3 ]# i3 q1 V" S7 e( iC. args[0] = "a"
* ?; J* A' P. Y6 z( HD. args[1]= 'b'8 L& C' t( A6 O i4 P. c
-----------------选择:C
- J& i$ f6 Q, F" L; X2 W' L3. Person, Student 和Teacher 都是类名。这些类有以下继承关系。 Person | -------------------- | | Student Teacher 并且在Java源代码中有如下表达式: Person p = new Student(); 如下哪个语句是正确的?
! s1 h2 ]; v. m& P. F0 iA. 这条语句是合法的+ q( \+ w1 @) D5 t" D
B. 这条语句是不合法的 s& x. F. b: {1 @& D2 u6 N
C. 编译时出错
( L( N+ J) [4 y7 @+ ? U |4 \D. 编译正确但运行时出错
' ~2 s- v2 e( U& C& V1 f. T7 K-----------------选择:A 7 C+ N$ z" C7 N8 G$ ^6 M F
4. 如果你试图编译下面的代码会发生什么事? Class MyString extends String{ }, K* D' I8 k3 s5 b0 V
A. 代码编译成功2 _8 f4 W2 B. Z$ @: r+ N$ x
B. 代码不能编译,因为没有定义一个main()方法
( N5 L0 T: U: }, Q- MC. 代码不能编译,因为String是abstract类型的
* K6 B7 M1 F, ^) w7 `( \0 DD. 代码不能编译,因为String是final类型的1 G: _8 y" d" O* r
-----------------选择:D 9 X3 B z* I# J7 W% r+ P+ F
5. 下面程序的输出结果是什么? class Foo{ static void change(String s){ s=s.replace('j','l'); } public static void main(String args[]){ String s="java"; change(s); System.out.println(s); } }% {0 w A2 S: O, M
A. lava) P7 p6 S7 R$ L+ D0 c$ A, D& M
B. java
Y2 F N, m& m3 F( TC. 编译错误 E; C+ J: J" X0 K% Y
D. 运行时出现异常' h; B- m d) j8 ?6 x
0 c s, h5 @+ V8 S+ {6. 下列代码的执行结果是 public class Test { public int aMethod() { static int i=0; i++; System.out.println(i); } public static void main(String args[]) { Test test = new Test();8 M* g+ r$ u3 l9 C
A. 编译错误9 Y* P @% ]' U6 B' A+ M v8 ?
B. 0
; ^( @5 B9 _2 [ D. q7 S: bC. 1
$ c, G- b9 K6 eD. 运行成功,但不输出" M' S+ m( h+ v @* x9 j9 y
' T3 H, R9 [5 T1 O' k0 W7. 下面程序的输出结果是什么? class Happy { public static void main(String args[]) { int i =1; int j = 10; do { if ( i++ < j--) continue; } while ( i <5 ); System.out.println ( i+" "+j ); } }/ W+ m( X7 L; p5 v: p6 h2 H
A. 5 5
& M: i i! s/ O0 Q- J' `) e$ JB. 5 4: j1 z6 u1 C _5 h
C. 6 4
* i7 C* V0 z% C7 kD. 5 6& g6 a1 ?% A1 }
% u' U: o+ z7 ~ c ^8. 给出下列的代码,哪行在编译时可能会有错误? ① 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; ⑧ } ⑨ }7 y/ c2 f5 A$ _! o
A. 49 I, ?/ Y5 i+ l" ~! e2 J
B. 6
( f: L$ D) V8 x" z# \) m5 n" mC. 7 n2 l0 ?. R0 w u: K% s7 c
D. 8
3 [# g/ ]. L1 ~ S! t2 U; u. B ; l% i% |: x3 |, d/ V
9. 给出下列代码,则数组初始化中哪项是不正确的? byte[] array1,array2[]; byte array3[][]; byte [][] array4;0 {# H% X# V" e. X- s" s
A. array2 = array1
7 l/ v; M. v( F% g% N$ bB. array2=array3
! U7 m# t1 X! i2 @7 A" s# ~C. array2=array48 v0 r6 O" P& o+ d
D. array3=array4
/ {# s% T6 D N$ z ( A6 ]$ I" I+ F
10. 如果你要读一个参数值,而该参数在<applet>标签内没有定义,则会:
5 l5 E( }8 G6 l$ e1 u0 t. u, R9 IA. 运行时抛出异常& `7 d" L2 z: Q# m2 S i* O
B. 参数值为空% A) V& \. e. Y# \; W4 f
C. 参数值是个空字符串
8 _: P6 r% X$ J9 M9 qD.
& C# F' L8 M( T/ V6 Z! W
8 T7 c5 u9 _- J8 g2 Y; n11. 下面程序的输出结果是什么? String s= "ABCD"; s.concat("E"); s.replace('C','F'); System.out.println(s);
/ K/ o0 @# r% i5 PA. 编译错误,字符串是不可改变的
p1 `% V0 _" ~B. ABFDE' t0 E( X1 f( A5 o) d1 @4 _
C. ABCDE, N- R7 k' h/ R
D. ABCD* r7 I0 c1 N' x% j
. N6 g3 M+ y9 y% B1 d4 V) z12. 如果你有下面的类定义 abstract class Shape{ abstract void draw(); } 请问,在试图编译下面的类定义时会发生什么情况? class Square extends Shape{ }+ t: v+ q# E# ]! t7 {" L
A. 都可以成功编译
7 Y6 K/ g3 H' x1 |4 S) t6 P! T9 p' |B. Shpe可以编译,而Square不能/ S, X) O3 d8 \) n C7 j
C. Square可以编译,而Shape不能, A8 z! e4 D) p8 x' G
D. Shape和Square都不能编译
( X* b b+ q, G* l( a! y9 _# { " y8 C; {' Q& Z: G
13. 下列语句序列执行后,k的值是( )。 int j=8, k=15; for( int i=2; i!=j; i++ ) { j-=2; k++; }
3 y- d, j0 E+ c% d- z! r u3 XA. 15
% E- Z5 K( V" W5 F. b- m1 HB. 167 X9 `. ? ^4 z3 i4 ^/ I
C. 17
# S# h1 c$ k2 A* J. |; v( q' b) @" mD. 18
( `& {- K$ L7 ~) w$ o0 O14. 下列语句序列执行后,k 的值是( )。 int x=6, y=10, k=5; switch( x%y ) { case 0: k=x*y; case 6: k=x/y; case 12: k=x-y; default: k=x*y-x; }1 |# B# s/ t# ` O
A. 60
9 D1 d9 C0 |; G# ^+ ]; aB. 54
; O0 y0 k5 k- d zC. 0
, C o: `3 e" GD. 5
/ i7 e( _+ f( {& Y% J3 F
0 w" K2 ?- p/ `. b8 |15. 有下面的类: public class Example{ static int x[]=new int[15]; public static void main(String args[]){ System.out.println(x[5]); } } 下面的那些说法是正确的。1 N( k& Y) r1 A, T; p3 W
A. 编译时出错
3 ?+ r7 H5 c$ Y1 U2 CB. 运行时出错
) F7 T7 R6 I! Y7 H1 p$ iC. 输出0
3 V7 k3 @3 Z7 i. A6 V; }D. 输出null4 f& K! r5 j: K6 P
) r7 v9 e8 x: u6 ]9 ^# s7 U16. 若有循环: int x=5,y=20; do{ y-=x; x++; }while(++x<--y);则循环体将被执行( )。
* L2 D8 ]( p5 K( DA. 0次6 x, N6 r8 W$ X3 c: G( @
B. 1次1 F" _0 A! f! [" Q& m4 ~
C. 2次
- K- I9 B: D% r) ?; U4 E7 bD. 3次6 [: K/ i# t5 F$ c
C: }' M6 Y: T3 x6 H5 j8 o R4 o
17. 以下由do-while语句构成的循环执行的次数是( )。 int k = 0; do { ++k; }while ( k < 1 );& H" ]* ?) S- \0 M" Z
A. 一次也不执行8 f1 g8 U+ k4 V9 n3 B9 G
B. 执行1次0 z( i4 m- C) ~+ v
C. 无限次
/ F9 d- ^# @$ l: e6 g7 V1 QD. 有语法错,不能执行3 e" P* n9 K* O, {" ]1 }6 l
2 i& u! z7 L. a Z- W/ p- d3 H18. 下列代码中,将引起一个编译错误的行是 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) } 120 \( C( `# L c1 ~8 ^
A. 第3行
8 a0 y# |4 ~; f7 [; {% w3 OB. 第5行, Q/ w- u# s% S6 w9 d/ Q+ f' H
C. 第6行$ l7 n- N9 V$ m# z/ J5 ~& G+ U( g
D. 第10行8 G- T9 k7 o: h8 ~' R; W
+ v+ `3 o, [) Z9 c) C( x0 v) d19. 设有下面两个类的定义: class Person { long id; // 身份证号 String name; // 姓名 } class Student extends Person { int score; // 入学总分 int getScore(){ re
6 v; \* C8 {' A$ T( f7 LA. 包含关系
2 o% A! G Y. V2 y4 h5 A: I5 YB. 继承关系
6 K, o+ L' g! m: Y( C9 v" [0 LC. 关联关系! |1 p. k7 f7 v
D. 无关系,上述类定义有语法错误
1 M J) i8 F4 w. t5 ?, t 2 U/ c5 A9 T8 A, j6 w
20. 下列语句序列执行后,a的值是( )。 int a=13; a%=a/5;
1 k0 K' r: g8 h p: ?A. 3( X: C3 s3 A0 m' l
B. 13* p |, P2 e& v! F* {4 k5 R% K2 h
C. 11 }4 I j0 W1 Y4 m8 p
D. 169
0 v( l! g6 o9 y1 r9 ~+ m! s' K. K9 x8 ?8 `
' O, w% t, _' M9 @
8 ]1 R5 z, b/ `4 m
13秋学期《JAVA语言程序设计Ⅰ》在线作业2' ~6 b1 H3 t+ V; t) D+ t% X/ j
- z3 {/ X K- P
单选题 多选题 1 `/ x/ P& Z" z/ ^
% t" X. A6 g; T6 K/ l
5 l* H- `" D. f4 d( p+ j) D
二、多选题(共 10 道试题,共 40 分。)
4 X+ e4 G9 M% j5 i. M3 m k- X* \1. 已知如下代码: public class Test { public static void main(String arg[]) { int i = 5; do { System.out.println(i); } while (--i>5) System.out.println("finished"); } } 执行后的输出结果包括什么?
. Z' L% \5 ~1 O) \A. 5
7 ~2 F" f. V" cB. 4
T+ T" y7 V; qC. 6
6 L/ ^/ a; w/ n; a- tD. finished
8 U! \1 \4 H3 \+ h1 xE. 什么都不输出
6 H, w% z$ h* X* R! M
+ S+ X* \& h- H, I2. 针对下面的程序,那些表达式的值是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; } }
8 F9 e' k) d' i& E- Z9 v6 G9 F- KA. a==b;4 d' Z+ N% G' F
B. a==x;
$ M( z4 y+ Z. U& w( DC. y==z;, ?9 m! p- s4 j7 F: i W
D. x==y;
8 T" R% @2 H* Q- T( {$ H1 }E. a==10.0;! p1 l r' _% f8 V* X4 q0 Z
-----------------
' A% o( U6 \5 ]" Y3. 如果有以下代码,哪几个数字能产生输出 "Test2" 的结果? Switch(x){ case 1: System.out.println("Test1"); case 2: case 3: System.out.println("Test2"); break;} System.out.println("Test3"); }
7 m; o: l2 b" o5 F5 NA. 0! \! N3 y7 h7 z; \; k, D( p
B. 1
. y$ i( Y) o% S* I# q2 [C. 2/ W0 b: E( C8 n/ {% |' c
D. 3. f) c/ i& s2 p" r( [) k
/ I: }, y6 x6 p" Z$ `* _, `! [4 }2 {4. 下面代码执行后的输出是什么? 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); }
: e8 w3 L: s- q7 DA. 0 and 0) ^) R7 e9 A/ j3 N. l
B. 0 and 1
7 D4 b$ C9 [5 oC. 0 and 2; n3 f) x" p0 x; Q' b' y, C' x
D. 1 and 0
3 t$ A* _8 A4 H7 u6 L4 F$ D3 sE. 1 and 15 H' R& D( w9 M; L" q
F. 1 and 2
9 k" C. n/ ]2 U$ [G. 2 and 0, ?1 I- `9 B3 p* v
H. 2 and 1
" z6 t& X$ U' WI. 2 and 2. Z, g" t; Y) H- H6 U6 O+ V
) r" m% t3 L( q2 ]; Z$ }) o
5. 选择所有有效的构造函数。 class Happy { } }
& ~9 K- J: }0 E7 I- c. ~0 CA. public void Happy(){}% K0 Q- `9 _# @8 F% j) w, h& u( y
B. public Happy(int c){}
9 D) s" e/ _7 b: A& R" [* XC. protected Happy(){}
2 \& `6 \- t0 s6 `* \! xD. public int Happy(){}
3 J# ^* U7 x6 A/ pE. void Happy(){}# H' X9 C3 I* _( i6 E
/ @/ N& x8 x" M2 N3 ]5 |* y
6. 请选出创建数组的正确语句。8 k+ W" C" V' k* h
A. float f[][] = new float[6][6];
2 L" k" D, F+ A4 O; FB. float []f[] = new float[6][6];; j6 t) v6 u0 x R6 r' v. [& e
C. float f[][] = new float[][6];
+ I6 q8 D7 i) t+ t( _8 gD. float [][]f = new float[6][6];
; H" `) s/ _. o. s4 B4 H k4 r0 r7 N4 B5 U
7. 已知如下定义: String s = "story"; 下面哪些表达式是合法的?
7 g" k* X6 e5 ^! Y9 ?" jA. s += "books";
# L6 d# N* z( `! p5 L/ PB. char c = s[1];
p6 r7 W( p0 y8 R7 h4 i9 WC. int len = s.length;3 C, |' ]; ~% y1 s/ k4 X1 D0 |: x& ~
D. String t = s.toLowerCase();! W% H- R% \5 _
8. 已知如下类定义: class Base { public Base (){ //... } public Base ( int m ){ //... } protected void fun( int n ){ //... } } public class Child extends Base{ // member methods } 如下哪句可以正确地加入子类中?
% A8 I7 S7 I( v( x0 CA. private void fun( int n ){ //...}" R2 A+ z( l' }# s. i2 H9 d
B. void fun ( int n ){ //... }
T9 \2 O9 w3 h; M7 `8 x% tC. protected void fun ( int n ) { //... }* j9 O- t% L, d0 ^' L$ ^# D
D. public void fun ( int n ) { //... }- Y* X( X: ?6 _1 H( M% c$ }0 M" j. k
/ B! g1 _# O) u, D. l9. 给出下面的代码段: 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处写入如下哪几行代码是正确的?1 a- l% o. _# O6 @1 Y8 r5 h% M4 ]" S5 a
A. Base(a,b)1 ?2 p5 B, r- o0 S
B. x=a,y=b;
9 ^! S3 c( z# }; Y0 l v$ HC. x=a;y=b;
6 f0 ]/ T9 F8 H2 gD. this(a,b);
* \" W- E& A- L, d7 C/ F
% H+ Z c2 i# t& M6 ~5 ~3 ?+ Q9 ?% o10. 假定文件名是“Fred.java”,下面哪个是正确的类声明。
3 }. d9 F! J0 U9 _/ N9 kA. public class Fred{ public int x = 0; public Fred (int x){ this.x=x; } }0 r% W" V" ?# _! ]% ^: P
B. public class fred{ public int x = 0; public Fred (int x){ this.x=x; } }
( U* L' f7 v, a# {" P0 _C. public class Fred extends MyBaseClass{ public int x = 0; }7 F4 k1 K; c) A+ g( _
0 E1 Z% Y0 m/ M8 Z4 _. v9 J
9 R, |" w5 v d; G& \! O: v% F; ~ |
|