顶部468*60ad 顶部468*60ad 顶部468*60ad 顶部468*60ad

全国软考程序员考试部分例题

2007-11-09 03:24:36  来源:网页教学网收集整理 

   例题1:

   Choose the three valid identifiers from those listed below.

   A. IDoLikeTheLongNameClass Webjx.Com

   B. $byte 网页教学网

   C. const 网页教学网

   D. _ok

   E. 3_case

   解答:A, B, D 网页教学网

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

Webjx.Com

   例题2:

网页教学网

   How can you force garbage collection of an object?

Webjx.Com

   A. Garbage collection cannot be forced

   B. Call System.gc().

Webjx.Com

   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) {

Webjx.Com

   2. void test(int i) {

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

   4. }

   5. void test(String s) { Webjx.Com

   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. Webjx.Com

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

   解答:D
  

网页教学网

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

Webjx.Com

   例题4: Webjx.Com

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

Webjx.Com

   A. int i=0;

   if (i) {

   System.out.println(“

网页教学网

   Hi”);

   }

  

   B.

   boolean b=true; Webjx.Com

   boolean b2=true; 网页教学网

   if(b==b2) {

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

网页教学网

   Webjx.Com

   }

网页教学网

   C. Webjx.Com

   int i=1;

   int j=2;

   if(i==1|| j==2) Webjx.Com

   System.out.println(“OK”); 网页教学网

  

   D. Webjx.Com

   int i=1;

   int j=2;

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

Webjx.Com

   System.out.println(“OK”); 网页教学网

   解答:B, C

Webjx.Com

  

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


   例题5:
  
   Which two demonstrate a "has a" relationship? (Choose two) 网页教学网

   A. public interface Person { } Webjx.Com

   public class Employee extends Person{ }

网页教学网

  

Webjx.Com

   B. public interface Shape { }

   public interface Rectandle extends Shape { }

   C. public interface Colorable { } Webjx.Com

   public class Shape implements Colorable

网页教学网

  

   { } 网页教学网

   D. public class Species{ }

   public class Animal{private Species species;}

   E. interface Component{ }

   class Container implements Component{ Webjx.Com

   private Component[] children;

  

网页教学网

   }

Webjx.Com

   解答:D, E

   点评: 在Java中代码重用有两种可能的方式,即组合(“has a”关系)和继承(“is a”关系)。“has a”关系是通过定义类的属性的方式实现的;而“is a”关系是通过类继承实现的。本例中选项A、B、C体现了“is a”关系;选项D、E体现了“has a”关系。

网页教学网

共2页: 上一页 1 [2] 下一页

文章评论

共有 0 位网友发表了评论 查看完整内容

推荐文章