QUESTION 102 Given:

23. Object [] myObjects = {

24. new Integer(12),

25. new String("foo"),

26. new Integer(5),

27. new Boolean(true)

28. };

29. Arrays.sort(myObjects);

30. for(int i=0;i<myObjects.length; i++) {

31. System.out.print(myObjects[i].toString());

32. System.out.print("");

33. }

What is the result?

A.   Compilation fails due to anerror in line 23.

B.   Compilation fails due to anerror in line 29.

C.   A ClassCastException occurs inline 29.

D.   A ClassCastException occurs inline 31.

E.   The value of all four objectsprints in natural order.

Answer: C

sort方法比较的必须是可以转化成相同的而且实现了Comparable接口的相同对象

QUESTION 103
Given:
1. public class Donkey {
2. public static void main(String[] args) {
3. boolean assertsOn = false;
4. assert (assertsOn) : assertsOn = true;
5. if(assertsOn) {
6. System.out.println("assert is on");
7. }
8. }
9. }
If class Donkey is invoked twice, the first time without assertions enabled, and the second time with
assertions enabled, what are the results?
A. no output
B. no output
assert is on
C. assert is on
D. no output
An AssertionError is thrown.
E. assert is on
An AssertionError is thrown.
Answer: D

考察assert,如果是断言有效的情况,即assert(false),就会抛出一个AssertionError

如果是true,则返回的是assert is on

QUESTION 105 Given:

11. public static voidmain(String[] args) {

12. try {

13. args = null;

14. args[0] = "test";

15. System.out.println(args[0]);

16. } catch (Exception ex) {

17. System.out.println("Exception");

18. } catch (NullPointerExceptionnpe) {

19. System.out.println("NullPointerException");

20. }

21. }

What is the result?

A.   test

B.   Exception

C.   Compilation fails.

D.   NullPointerException

Answer: C

首先是小异常处理,然后是大的异常处理!!!!如果返过来,就有问题了,导致编译失败!!!

QUESTION 106
Given:
22. public void go() {
23. String o = "";
24. z:
25. for(int x = 0; x < 3; x++) {
26. for(int y = 0; y < 2; y++) {
27. if(x==1) break;
28. if(x==2 && y==1) break z;
29. o = o + x + y;
30. }
31. }
32. System.out.println(o);
33. }
What is the result when the go() method is invoked?
A. 00
B. 0001
C. 000120
D. 00012021
E. Compilation fails.
F. An exception is thrown at runtime.
Answer: C

考察break,当x=0,y=0,o=00;

当x=0,y=1,o=0001;

当x=1,y=0,break掉内循环,o=0001;

当x=2,y=0,o=000120;

当x=2,y=1,break掉断点处的外循环,o=000120;

QUESTION 109
Given:
1. public class Boxer1{
2. Integer i;
3. int x;
4. public Boxer1(int y) {
5. x = i+y;
6. System.out.println(x);
7. }
8. public static void main(String[] args) {
9. new Boxer1(new Integer(4));
10. }
11. }
What is the result?
A. The value "4" is printed at the command line.
B. Compilation fails because of an error in line 5.
C. Compilation fails because of an error in line 9.
D. A NullPointerException occurs at runtime.
E. A NumberFormatException occurs at runtime.
F. An IllegalStateException occurs at runtime.
Answer: D

第五行5. x = i+y;,还没有为i赋值(此时i为null),无法运算,注意看属性Integer i,没有给i赋值;

QUESTION 111
Given:
1. public class Venus {
2. public static void main(String[] args) {
3. int [] x = {1,2,3};
4. int y[] = {4,5,6};
5. new Venus().go(x,y);
6. }
7. void go(int[]... z) {
8. for(int[] a : z)
9. System.out.print(a[0]);
10. }
11. }
What is the result?
A. 1
B. 12
C. 14
D. 123
E. Compilation fails.
F. An exception is thrown at runtime.
Answer: C

int[]... z表示可变参数,而可变的是数组的个数。一共有两个数组,输出每个数组的第一个元素

QUESTION 112
Given:
10. public class Foo {
11. static int[] a;
12. static { a[0]=2; }
13. public static void main( String[] args ) {}
14. }
Which exception or error will be thrown when a programmer attempts to run this code?
A. java.lang.StackOverflowError
B. java.lang.IllegalStateException
C. java.lang.ExceptionInInitializerError
D. java.lang.ArrayIndexOutOfBoundsException
Answer: C

还没new呢,就赋值。初始化错误。

QUESTION 113
Given:
11. class X { public void foo() { System.out.print("X "); } }
12.
13. public class SubB extends X {
14. public void foo() throws RuntimeException {
15. super.foo();
16. if (true) throw new RuntimeException();
17. System.out.print("B ");
18. }
19. public static void main(String[] args) {
20. new SubB().foo();
21. }
22. }
What is the result?
A. X, followed by an Exception.
B. No output, and an Exception is thrown.
C. Compilation fails due to an error on line 14.
D. Compilation fails due to an error on line 16.
E. Compilation fails due to an error on line 17.
F. X, followed by an Exception, followed by B.
Answer: A

多态性,首先是调用的SubB里面的foo()函数,而执行SubB里面的foo()函数首先就要super.foo();即调用父类的foo()函数输出X,后来就会抛出一个异常,回到调用该抛出异常的方法的地方。不会输出B

QUESTION 125
A team of programmers is reviewing a proposed API for a new utility class. After some discussion, they
realize that they can reduce the number of methods in the API without losing any functionality. If they
implement the new design, which two OO principles will they be promoting?
A. Looser coupling
B. Tighter coupling
C. Lower cohesion
D. Higher cohesion
E. Weaker encapsulation
F. Stronger encapsulation
Answer: A

内聚:一个模块内各个元素彼此结合的紧密程度
耦合:一个软件结构内不同模块之间互连程度的度量

这里减少API数量却不丢失任何功能,意思是各个模块之间的联系很小,互联程度很低,属于低耦合。

最新文章

  1. 常用的Javascript设计模式
  2. jQuery 遍历 - each() 方法
  3. MySql批处理的小窍门:排行榜类数据生成
  4. opencv获取图片sift特征
  5. Mysql 多表联合查询效率分析及优化
  6. C#基础:C#4.0权威指南 杂笔一
  7. objective-C学习笔记(一)OBJC简介
  8. Bash环境配置文件
  9. 关于jQuery中的选择器
  10. 每天一点Linux系列之—vim
  11. 利用SSH上传、下载(使用sz与rz命令)
  12. LordPE修复从进程dump出来的内存文件
  13. C# if---else---练习题整理
  14. shell 学习笔记一
  15. go build 和 go install
  16. hive计算周一的日期
  17. PHP 使用非对称加密算法(RSA)
  18. NXP ARM Vector Table CheckSum
  19. Eigen教程(2)
  20. FPGA连接

热门文章

  1. 基本数据结构 -- 栈简介(C语言实现)
  2. tar.gz 文件解压 (安装 netbean 时会用到)
  3. js 基础拓展
  4. web项目中nicedit富文本编辑器的使用
  5. sprint2(第九天)
  6. WebGL学习笔记二
  7. 第二篇——VC++简单随机四则运算
  8. 福大软工1816 &#183; 评分结果 &#183; Alpha冲刺
  9. Java第二天——标识符命名规则、Java的知识、快捷键的使用、Scanner获取值的常用方法
  10. fidder监控请求响应时间和请求IP(摘抄至网络)