Java2程序员考试SCJP试题解析1
2004-06-13 07:47:00 ChinaITLab

  前言


  无论你是个新手,还是程序设计方面的专家,你都会惊异于Sun公司Java的无穷魅力。Java带给你的并不仅仅是面向对象、开放、平台无关、易用、安全和“Write once, run anywhere”等软件开发方面的优势,更重要的一点是,它提供了一种新颖的表达思想的方式,一种全新的思维模式。随着待解决问题的规模不断膨胀,Java彻底的面向对象思想的灵活性就会凸现出来。毋庸置疑,Java是你开发大型软件时最得心应手的利器或是你转行IT的入门首选。

  SCJP考试简介

  ● 考试方式

  全英文试题,以电脑作答,在授权的Prometric考试中心参加考试

  考试编号:310-025

  先决条件:无

  考试题型:复选、填空和拖拽匹配

  题量:59

  及格标准:61%

  时限:120分钟

  费用:1250元

  ● 要求具备的能力
  
  ● 使用Java编程语言创建Java应用程序和applets。

  ● 定义和描述垃圾搜集,安全性和Java虚拟机(JVM)。

  ● 描述和使用Java语言面向对象的特点。

  ● 开发图形用户界面(GUI)。利用Java支持的多种布局管理。

  ● 描述和使用Java的事件处理模式。

  ● 使用Java语言的鼠标输入、文本、窗口和菜单窗口部件。

  ● 使用Java的例外处理来控制程序执行和定义用户自己的例外事件。

  ● 使用Java语言先进的面向对象特点, 包括方法重载、方法覆盖、抽象类、接口、final、static和访问控制。

  ● 实现文件的输入/输出 (I/O)。

  ● 使用Java语言内在的线程模式来控制多线程。

  ● 使用Java 的Sockets机制进行网络通信。

  例题1:

  Choose the three valid identifiers from those listed below.

  A. IDoLikeTheLongNameClass

  B. $byte

  C. const

  D. _ok

  E. 3_case

  解答:A, B, D

  点评:Java中的标示符必须是字母、美元符($)或下划线(_)开头。关键字与保留字不能作为标示符。选项C中的const是Java的保留字,所以不能作标示符。选项E中的3_case以数字开头,违反了Java的规则。

  例题2:

  How can you force garbage collection of an object?

  A. Garbage collection cannot be forced

  B. Call System.gc().

  C. Call System.gc(), passing in a reference to the object to be garbage collected.

  D. Call Runtime.gc().

  E. Set all references to the object to new values(null, for example).

  解答:A

  点评:在Java中垃圾收集是不能被强迫立即执行的。调用System.gc()或Runtime.gc()静态方法不能保证垃圾收集器的立即执行,因为,也许存在着更高优先级的线程。所以选项B、D不正确。选项C的错误在于,System.gc()方法是不接受参数的。选项E中的方法可以使对象在下次垃圾收集器运行时被收集。

  例题3:

  Consider the following class:

  1. class Test(int i) {

  2. void test(int i) {

  3. System.out.println(“I am an int.”);

  4. }

  5. void test(String s) {

  6. System.out.println(“I am a string.”);

  7. }

  8.

  9. public static void main(String args[]) {

  10. Test t=new Test();

  11. char ch=“y”;

  12. t.test(ch);

  13. }

  14. }

  Which of the statements below is true?(Choose one.)

  A. Line 5 will not compile, because void methods cannot be overridden.

  B. Line 12 will not compile, because there is no version of test() that rakes a char argument.

  C. The code will compile but will throw an exception at line 12.

  D. The code will compile and produce the following output: I am an int.

  E. The code will compile and produce the following output: I am a String.

  解答:D

  点评:在第12行,16位长的char型变量ch在编译时会自动转化为一个32位长的int型,并在运行时传给void test(int i)方法。

  例题4:

  Which of the following lines of code will compile without error?

  A.

  int i=0;

  if (i) {

  System.out.println(“Hi”);

  }

  B.

  boolean b=true;

  boolean b2=true;

  if(b==b2) {

  System.out.println(“So true”);

  }

  C.

  int i=1;

  int j=2;

  if(i==1|| j==2)

  System.out.println(“OK”);

  D.

  int i=1;

  int j=2;

  if (i==1 &| j==2)

  System.out.println(“OK”);

  解答:B, C

  点评:选项A错,因为if语句后需要一个boolean类型的表达式。逻辑操作有^、&、| 和 &&、||,但是“&|”是非法的,所以选项D不正确。

百灵编辑:茂军
【发送给好友】
相关新闻
    发表评论百灵网站留言板管理规则
    欢迎留言 谨请注意
    署名:
    emali:
    内容:
    教育推荐
    TOEFL听力小对话【11】
    微笑说英语:The Wedding 婚礼
    迪士尼英语3--回答问题
    各专业就业前景分析--管理学(三)
    各专业就业前景分析--理学(四)
    各专业就业前景分析--文学(四)
    各专业就业前景分析--法学
    中小学家庭作业研究
    国内对有效教学标准的定义
    帮助孩子远离马虎
    教育孩子的十四大法宝
    热点导读
    高考志愿填报完全指南
    关注2004年中考