答题详情(红色字体显示表示答案不正确):
1. 以下程序如何修改才能使得单一MyLogger对象支持多线程环境:Given: 1. public class MyLogger { 2. private StringBuilder logger = new StringBuilder(); 3. public void log(String message, String user) { 4. logger.append(message); 5. logger.append(user); 6. } 7. } |
- 您的答案:
synchronize the log method
2. 下面说法正确的是: |
- 您的答案:
Collection是个java.util下的接口
3. 下面哪两行代码创建了恰当的DateFormat对象并给Date对象增加了一天:( B ) 33. Date d = new Date(0); 34. String ds = “December 15, 2004”; 35. // insert code here 36. try { 37. d = df.parse(ds); 38. } 39. catch(ParseException e) { 40. System.out.println(”Unable to parse “+ ds); 41. } 42. // insert code here too |
- 您的答案:
35. DateFormat df= DateFormat.getDateJnstance(); 42. d.setTime( (1000 * 60 * 60 * 24) + d.getTime());
4. 在一个Java进程中,每个线程都拥有自己的栈(Stack)和局部变量,但所有的线程共享同一个堆(Heap)内存 |
- 您的答案:
正确
5. JAVA程序中,char型变量可定义成为一个中文字符。 |
- 您的答案:
错误
6. http是一个( )协议 |
- 您的答案:
无状态
7. 假设logger是Log4J的日志对象,logger.error(ia)正确的输出是( B ) try{ throw new IOException(); } catch (IOException e) { IllegalArgumentException ia = new IllegalArgumentException(e); logger.error(ia); } |
- 您的答案:
java.lang.IllegalArgumentException: java.io.IOException
8. 下面main()方法运行后输出是什么:( G ) 假设sleep(n)方法只休眠n毫秒 1. public class TwoThreads { 2 3. private static Object resource = new Object(); 4. 5. private static void delay(long n) { 6. try { Thread.sleep(n); } 7. catch (Exception e) { System.out.print(”Error “); } 8. } 9 10. public static void main(String[] args) { 11. System.out.print(”StartMain “); 12. new Thread1().start(); 13. delay(1000); 14. Thread t2 = new Thread2(); 15. t2.start(); 16. delay(1000); 17. t2.interrupt 18. delay(1000); 19. System.out.print(”EndMain “); 20. } 21. 22. static class Thread 1 extends Thread { 23. public void run() { 24. synchronized (resource) { 25. System.out.print(”Startl “); 26. delay(6000); 27. System.out.print(”End1 “); 28. } 29. } 30. } 31. 32. static class Thread2 extends Thread { 33. public void run() { 34. synchronized (resource) { 35. System.out.print(”Start2 “); 36. delay(2000); 37. System.out.print(”End2 “); 38. } 39. } 40. } 41. } |
- 您的答案:
StartMain Start1 EndMain End1 Start2 Error End2
9. 小阳的妹妹是小蒂和小红;他的女友叫小丽。小丽的哥哥是小刚和小温。他们的职业分别是: 小阳:医生 小刚:医生 小蒂:医生 小温:律师 小红:律师 小丽:律师 这6人中的一个杀了其余5人中的一个。 (1)假如这个凶手和受害者有一定的亲缘关系,那么说明凶手是男性; (2)假如这个凶手和受害者没有一定的亲缘关系,那么说明凶手是个医生; (3)假如这个凶手和受害者的职业一样,那么说明受害者是男性; (4)假如这个凶手和受害者的职业不一样,那么说明受害者是女性; (5)假如这个凶手和受害者的性别一样,那么说明凶手是个律师; (6)假如这个凶手和受害者的性别不一样,那么说明受害者是个医生。 根据上面的条件,请问凶手是谁? |
- 您的答案:
小红
10. 有关Servlet的生命周期说法正确的有 |
- 您的答案:
destroy()方法释放Servlet实例
init()方法在创建完Servlet实例后对其进行初始化,传递的参数为实现ServletContext接口的对象
service()方法响应客户端发出的请求
11. JAVA5的研发代号是Mustang。 |
- 您的答案:
正确
12. Jack夫妇请了Tom夫妇和Henrry夫妇来他们家玩扑克。这种扑克游戏有一种规则,夫妇两个不能一组。Jack跟Lily一组,Tom的队友是Henrry的妻子,Linda的丈夫和Sara一组。那么这三对夫妇分别为: |
- 您的答案:
Jack一Sara,Tom~Lily,Henrry一Linda;
13. 假定已声明注解AnnotationA,下列哪些对AnnotationA的使用是正确的:( ) @Target( { ElementType.CONSTRUCTOR, ElementType.FIELD }) public @interface AnnotationA { String name() default "##default"; boolean nillable(); int[] value(); } @AnnotationA() // A class A { @AnnotationA(nillable = true, value = { 1 }) //B private int aa = 0; @AnnotationA(name = "A", value = { 1 }) //C public A(){} @AnnotationA(nillable = true, value = { 1 }) //D public void method1(){} @AnnotationA() //E public void method2(){} } |
- 您的答案:
B
14. 有四只小老鼠一块出去偷食物(它们都偷食物了),回来时族长问它们都偷了什么食物。老鼠A说:我们每个人都偷了奶酪。老鼠B说:我只偷了一颗樱桃。老鼠C说:我没偷奶酪。老鼠D说:有些人没偷奶酪。族长仔细观察了一下,发现它们当中只有一只老鼠说了实话。那么下列的评论正确的是: |
- 您的答案:
所有老鼠都偷了奶酪;
15. switch语句中必须有default分支。 |
- 您的答案:
错误
16. 电视上正在进行足球世界杯决赛的实况转播,参加决赛的国家有美国、德国、巴西、西班牙、英国、法国六个国家。足球迷的李锋、韩克、张乐对谁会获得此次世界杯的冠军进行了一番讨论:韩克认为,冠军不是美国就是德国;张乐坚定的认为冠军决不是巴西;李锋则认为,西班牙和法国都不可能取得冠军。比赛结束后,三人发现他们中只有一个人的看法是对的。那么哪个国家获得了冠军? |
- 您的答案:
巴西
17. 下面程序输出的结果: ( D ) class Base { String s; Base(String s) { this.s = s; } public void setString(String s) { this.s = s; } } public class TestPanel { private List list=new ArrayList(); public static void main(String argv[]) { TestPanel ur = new TestPanel(); ur.go(); //其它代码(略) } public void go() { Base b1 = new Base("One"); //语句1 b1.setString(""); list.add(b1); Base b2 = new Base("Two"); //语句2 list.add(b2); b1=null; b2=null; } } 上述代码中,执行完方法go后,可能被回收的对象是: |
- 您的答案:
D. 都不可能
18. 语句System.out.print(1.00 - 9*0.1);输出的结果是0.1 |
- 您的答案:
错误
19. 小王、小张、小赵三个人是好朋友,他们中间其中一个人下海经商,一个人考上了重点大学,一个人参军了。此外他们还知道以下条件:小赵的年龄比士兵的大;大学生的年龄比小张小;小王的年龄和大学生的年龄不一样。请推出这三个人中谁是商人?谁是大学生?谁是士兵? |
- 您的答案:
小张是商人,小赵是大学生,小王是士兵。
20. 如果同一段代码在一个方法中出现了三次,则可以使用eclipse的重构工具将其中一段提取成公共方法,同时需要手动将另外两段删除并修改为调用公共方法的形式。 |
- 您的答案:
正确