《JAVA程序设计》模拟题 一.判断题
, Q+ R0 e: Y% B( \1、Boolen变量值可以是0或1 ( )2 S! ?! B3 Y) l# L; u$ l
2、在Java中,整型的大小是不固定的。一些编译器使用2字节的整型,而其它编译器则使用4字节 ( )
) [, B9 M5 i9 O- O2 d3、运算符 ++ 的优先级高于运算符 + ( )7 z2 O$ X6 ~1 |4 u6 v
4、将Short值赋给Long值是允许的 ( )
/ u5 s+ Y0 O( g" G" n5、Java中的每个类都至少有一个构造器 ( )
4 s! z, H c6 a$ S6、静态方法可作用于类变量和实例变量 ( )$ w# T9 K- s3 J7 \
7、在同一类中可以有具有以下声明的两个方法:
( T7 I6 _8 i( h' C p" a& r6 q void method1(int j,int k)和int method2(int k,int j) ( )$ l [- g0 n- E( I' k8 H8 g k" j
8、一个类的子类可以是某些其它类的超类 ( ), r, q; n* W+ n% f' x, ~' e
9、当超类引用变量指定为对子类的引用时,只能访问超类中定义的成员 ( )
3 [% H$ x5 X- q+ x10、一个类可以拥有任何数量的超类和子类 ( )0 m# ? F& C' a% f! C% `1 m, w: I8 ?
二.单项选择题
' K- [1 c# ^( w B. {1. 哪种语言是以对象为特征的开发可视化程序组件的语言?( )
$ H$ Q2 e0 H3 u; PA. 过程化语言 B. 面向对象的语言
) T4 q* X1 d A/ e3 N4 q& Y! gC. 机器语言 D. 以上都不是
" o F8 D) b" q6 T& N y: q2. 以下哪个选项使Java得以在因特网上流行?( )
. o, I% T' ^1 H& ^8 NA. Java Applet B. Java应用程序 C. Java字节码/ l5 [' T( C' e9 w5 t
3) 所有Java应用程序必须包含下面哪个方法才能独立运行?( )
/ F( L+ w3 C; g: c* |2 X) v* aA. Start() B. Begin() C. Method() D. Main()
/ R% x8 [: ]' U( `8 j$ K0 U4) 执行编译好的Java程序的命令是( )
; i0 g- u/ X8 a, a- ~" HA. javac B. java C. run D. ececute. `6 N! _) G ^3 l- J0 A5 [
5) 可以将以下哪个值赋给类型char的变量?( )
7 C3 [* g. t" \7 d& p2 i( J* o7 g(1).’A’
3 Y" P2 ]/ s- T3 i- m+ V8 v8 O(2).9, z2 a) {( }# l, J
(3).12.3; _2 E6 d. q! E, y( d5 @: \
(4).”hello”
+ _. B; m" T% c+ O7 BA. (1)和(2) B. (1)、(2)和(3)
9 z" i; @& E. U6 TC. (1)
4 Z, u B' d* ?D. (2)) k0 i E% Z. p5 D
6.Java中的子类也称为( )+ i5 i L" a8 y* T" r4 W
A. 内联类 B. 嵌套类 C. 派生类 D. 隐藏类4 Q+ k9 ` x7 J
7.以下哪个是关于Java的正确说法( )" o( l/ E1 D: m3 `
A. 不具有编译器 B. 不具有解释程序
7 @5 i0 `7 o7 S( z: F4 m$ [; ^C. 不具有编译器和解释程序 D. 具有字节码阅读器3 |# G& {% R* H+ K$ T
8.运算符“|”是( )w9 d' `; i9 u
A. 位运算符 B. 逻辑运算符 C. 这种运算符不存在
! C4 }: \5 g3 ?3 m0 j9. 使用以下哪些修饰符进行修饰时,子类不可访问其变量?( )6 e5 d4 P& t6 e* a6 { m3 X" A
A. Protected B. Private C. 以上两者都是 D. 以上都不是5 {3 }" r* V) c. A
10. 以下关于抽象方法的说法哪些是错误的?( )) ]5 W, k, i' r
A. 可以直接访问它们而无需创建包含他们的类对象。" R/ T- j8 S: [3 n k
B. 它们的实现是不提供的。
4 A+ B* g ^0 g7 \- f2 [2 W5 GC. 它们的实现是由其子类提供的。
: \4 J3 o, G" M/ QD. 抽象方法永远不会被调用。* p% f( F4 C/ ^
11.引用抽象类的引用变量可以初始化为( )- g% h' K! z+ D7 a a( k8 v
A. 抽象类的对象
S6 R n- p% c8 z& SB. 抽象类子类的对象5 e$ l5 g# a- ~/ W
C. 以上两者都是+ w, c9 V9 ?/ r1 Y" o. p8 c
D. 以上都不是
- e, I9 C8 f* N. |12. 以下关于接口的说法哪些是错误的?( )( L5 m$ C1 E7 _ f1 G
A. 创建接口层次结构是可能的。
6 i7 A. G6 ]6 i1 Z- ]+ T/ Q Z2 b3 rB. 接口类型变量可用于应用实现它的类对象。
0 {$ _3 u% L* Q! }3 `C. 接口可被实例化。, N9 J/ a; x7 X2 H
D. 声明抽象方法的接口无需在其声明中具有abstract修饰符。: y+ ~: i3 I% w i
13.假定没有任何修饰符指定其访问的类拥有以下哪种访问级别?( )0 C$ b9 E% b! E7 u2 S4 X
A. Public B. Protected C. Package D. Private
* k5 N" e0 z, j1 R* D, e% B4 D: u9 c14. 可在方法的作用域中抛掷的异常是:( )
- ?- T" y: H* N4 \) q4 }( IA. 使用Java的throw语句的方法直接抛掷的异常6 ]* v! n5 }$ a6 b" {* |
B. 被方法通过调用其他方法抛掷的异常
2 E) a3 K0 i0 J( B) kC. 上面的a和b
4 F& [4 u% K3 t$ k* e) ?- [; XD. 以上都不是
! P7 V p, _) t+ a2 ?6 ?15. 如果我们假定throw object;但该参数不是Throwable对象,则会发生什么?( )
- _7 s) S. t6 _# t# z, [7 N5 aA. 什么也不发生,该参数也将时有效的" B$ p: J1 h9 ]- }, ^; w0 g1 X
B. 该参数将转换成Throwable对象,然后执行该语句
( v& Z: ]8 ]' _# I, Z& u7 ` iC. 编译器将指出错误4 U6 v4 }( X. z
D. 这本身将产生异常* `" N! Q+ x4 ]- |& c
16.何时抛掷Error异常?( )$ Q, g6 x4 n8 v7 i) g6 K0 m
A. 当发生动态链接失败或JVM本身发生某些知命错误时
: @1 \9 n0 _" {1 x# W1 \B. 当OS中的中断处理程序不处理生成的中断时{' d% R9 p* M
C. 当运行时异常系统无法处理它时
& U( t% U& F) `. Q9 X& DD. 以上都是8 Z- f3 |: { W. ~/ J' R, _$ S* ?
17.以下程序测试String 类的各种构造方法,试选出其运行效果。( )
2 |% a- N$ T8 I* d2 R7 @6 F; n class STR{
' P5 O2 U _8 h. r9 V* d public static void main(String args[]){
% |7 d: I. q8 J z2 _ String s1=new String();( ~$ c) z6 s4 H: I% A* E
String s2=new String("String 2");' t- V- O3 R g% u
char chars[]={'a',' ','s','t','r','i','n','g'};
. L4 B6 g( |9 {& L- A String s3=new String(chars);3 ?2 B: V! ~, b! m& i, \, q+ }5 e
String s4=new String(chars,2,6);
0 S& _0 M D, q byte bytes[]={0,1,2,3,4,5,6,7,8,9};& C( \& s5 w5 d5 ], G
StringBuffer sb=new StringBuffer(s3);. o1 l2 f0 ^0 z0 E
String s5=new String(sb);
7 w, x8 }4 @1 q1 U" v9 ] System.out.println("The String No.1 is "+s1);
3 L! W. i/ O9 _$ m+ A7 V- e System.out.println("The String No.2 is "+s2);/ o" ]0 ~* `5 r# F1 G. \" o, }
System.out.println("The String No.3 is "+s3);
6 f3 i9 o1 {, F9 D( u h9 U: u System.out.println("The String No.4 is "+s4);
) u8 A9 l2 E8 a System.out.println("The String No.5 is "+s5);0 |% _. i e5 j" ^9 j) n: Q
}2 L. x9 T2 c) c7 V8 c2 |# }
}
1 Z; t) U) @' U o$ K7 E' xA. The String No.1 is
* ?5 P. D0 e0 h The String No.2 is String 2
# J1 K! {4 h' a- z$ _1 J' T: G The String No.3 is a string. `# b. J7 }1 ]7 A) E% A' c( v
The String No.4 is string, y _* {0 O# Q( m1 W3 h
The String No.5 is a string
+ ^, Q) b; M3 s$ [! x( sB .The String No.1 is- x Q8 v m, V& n
The String No.2 is String 2/ ~/ N: K, [! a" {7 K) S* o
The String No.3 is a string
5 P# B% B+ {$ B- g3 u% c9 D. P The String No.4 is tring
8 |3 p0 `) `$ [8 \The String No.5 is a string
6 s' \+ A h2 K+ \# }0 gC. The String No.1 is! K- t: \9 ?8 E: B3 V9 d
The String No.2 is String 2
% _9 R" j1 _, r The String No.3 is a string
7 r6 l, w W* \/ R7 W3 Y The String No.4 is strin9 W! ]% l2 j2 y1 v* `+ H/ u
The String No.5 is a string
0 k; D7 u' A ~0 ~, T9 m- c+ Z! x6 ID. 以上都不对( j$ }" X1 A: ]9 ^* o
18.下面语句段的输出结果是什么?( )1 l! x. o9 _7 X8 i8 p. }- W
int i = 9;- t7 ^" }! y R3 G0 j _3 Z* ~
switch (i) {
9 H! z5 l; V. N8 g4 m default:k8 D# q4 _* g1 F$ p
System.out.println("default");
* C! }0 @+ I: H/ ^+ Z+ } case 0:& E! o; ?1 a" P" n7 p1 U
System.out.println("zero");- |: q- s6 [4 P; y9 s
break;/ S7 R1 Y6 G& D" V* Q( S/ w3 f
case 1:
7 T+ X3 v1 P5 B System.out.println("one");
* V0 x: ]. U2 U2 j7 {3 K! ^6 E) x6 U case 2:+ l. O0 g% s, K4 m
System.out.println("two"); }
+ Q ~- l6 h6 e3 _1 P: J& Y7 i; ?A .default* l( P/ g" ~1 T& Y
B. default, zero# h, @$ n; ?$ p: Q6 [3 k7 r) [
C. error default clause not defined; b% y2 E! z" X7 a: D
D. no output displayed1 b I3 f' ^1 v- n% g; K, z1 A
19.下面哪个语句正确地声明一个整型的二维数组?( )
2 c+ I5 b& o( ^% q( B g( G% CA. int a[][] = new int[][]; B. int a[10][10] = new int[][];
! d7 Z- }- r4 [( h3 R( n" f; fC. int a[][] = new int[10][10]; D. int [][]a = new int[10][10];+ i" X8 D1 D0 v: Z# V/ T
20. 欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的 ?( )
% n& ~0 T1 c7 T' Q: i* y" _A. ArrayList myList=new Object(); $ Y3 D3 n* q* K4 } K% {9 d
B. List myList=new ArrayList();8 A4 \3 R R2 T( D5 e+ I
C ArrayList myList=new List(); 8 _# Z5 y3 O) p @* `' ]# q( _* x. d3 S
D. List myList=new List();三.多项选择* P# x9 j3 n+ r/ V' R% G0 W) K" k
1.Java语言在体系结构上是( )2 L% g* k/ d, t' k# U! H. C. a
A. 定向的 B. 抽象的 C. 无关的 D. 特定的- V* p3 f8 H* c- G. s: ^; k
2. 以下哪个是关于Java的正确说法( )
, a) q2 Q# L4 _: e1 u' \8 D3 fA. 具有编译器 B. 具有解释程序
; @( P8 e: P" H) rC. 具有编译器和解释程序 D. 具有字节码阅读器7 D0 f1 b5 r; t. C1 i
3.当我们希望在发生某些条件时跳出循环,可以使用( )& K4 J( T2 ^+ t: V
A. break语句 B. continue语句 C. exit语句3 U6 c$ Q2 N& F
4.以下那句话是正确的?( )
# K& H! Q$ X! Y L. Z9 jA. 异常是事件 B. 错误导致异常
* E& m+ q6 w9 N- G. JC. 异常导致错误 D. 所有时间都是异常
Q% _* `, O; s5. 在Java中,以下哪种情况被视为错误?( )9 U$ ?* _: J' G
A. 内存芯片故障 B. 试图用零去除时) ]& C5 A7 k; H
C. 未向用户分配存储单元的引用 D. 试图执行非法的指令
. D1 P; D* s9 t答:1.(BC) 2 .(ABCD) 3.(AB) 4.(AB) 5.(AD)四、简答题
* {: s6 N& p5 G1 J1、error和exception有什么区别? ; {4 U4 M0 }% w, j" r3 Q. M
参考答案:
+ _$ U( r8 n! V3 R: }$ P0 |# r1 k8 k7 D3 Y答:error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。3 R0 f4 b* Y2 T. j6 O
exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况
. A/ i/ g% x* h5 t6 Vwww.ap5u.com; F8 ]* ^# [) k0 [5 S0 L$ y. ?