11. 如下代码:
public class X {
public static void main(String [] args) {
try {
badMethod();
System.out.print("A");
}
catch (Exception ex) {
System.out.print("C");
}
finally {
System.out.print("B");
}
System.out.print("D");
}
public static void badMethod() {
throw new Error();
}
}
结果是什么?
A. ABCD
B. 编译失败.
C. 显示C,退出程序.
D. 显示B,C,退出程序.
E. 显示BCD,退出程序.
答案:?
12. 如下代码:
class Exc0 extends Exception { }
class Exc1 extends Exc0 { }
public class Test {
public static void main(String args[]) {
try {
throw new Exc1();
} catch (Exc0 e0) {
System.out.println("Ex0 caught");
} catch (Exception e) {
System.out.println("exception caught");
}
}
}
结果是什么?
A. Ex0 caught
B. exception caught
C.第2行出错,编译失败.
D. 第6行出错,编译失败.
答案:A
13. 以下哪四个能使用throw抛出?
A. Error
B. Event
C. Object
D. Throwable
E. Exception
F. RuntimeException
答案:A,D,E,F
14. 如下代码:
public class X (
private static int a;
public static void main(String [] args) {
modify(a);
System.out.println(a);
}
public static void modify(int a) {
a ;
}
}
结果是什么?
A. 0
B. 1
C. 编译失败.
D. 抛出运行时异常.
答案:A
15. 如下代码:
int i = 0;
for (; i <4; i = 2) {
System.out.print(i "");
}
System.out.println(i);
输出结果是什么?
A. 0 2 4
B. 0 2 4 5
C. 0 1 2 3 4
D. 编译失败
E. 一个异常在运行时被抛出
答案:A
16. 如下代码:
public class Foo {
public static void main(String[] args) {
try {
return;
} finally {
System.out.println( "Finally" );
}
}
}
输出结果是什么?
A. Finally
B.编译失败
C. 代码正常运行但没有任何输出.
D. 运行时抛出异常
答案:A
17. 如下代码:
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. 代码运行但没有输出.
E. 运行时抛出异常.
答案:B
18. 如下代码:
Float f = new Float("12");
switch (f) {
case 12: System.out.println("Twelve");
case 0: System.out.println("Zero");
default: System.out.println("Default");
}
结果是什么?
A. Zero
B. Twelve
C. Default
D. Twelve
Zero
Default
E. 编译失败.
答案:E
19. 下面哪三个描述是正确的?
A. 默认构造器初始化方法变量
B. 默认构造器有和它所在类相同的访问修饰词.
C. 默认构造器调用其父类的无参构造器.
D. 如果一个类没有无参构造器,编译器会为它创建一个默认构造器.
E. 只有当一个类没有任何构造器时,编译器会为它创建一个默认构造器
答案:B,C,E
20. 如下代码
10. public Object m() {
11. Object o = new Float(3.14F);
12. Object [] oa = new Object[1];
13. oa[0] = o;
14. o = null;
15. oa[0] = null;
16. print 'return 0';
17. }
当Float对象在第11行被创建后, 什么时候能够被垃圾回收?
A. 13行以后.
B. 14行以后.
C. 15行以后.
D. 16行以后.
答案:B