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

http://www.itjxue.com  2015-07-17 01:18  来源:未知  点击次数: 

  例题6:

   Which two statements are true for the class java.util.TreeSet? (Choose two)

   A. The elements in the collection are ordered.

   B. The collection is guaranteed to be immutable.

   C. The elements in the collection are guaranteed to be unique.

   D. The elements in the collection are accessed using a unique key.

   E. The elements in the collection are guaranteed to be synchronized

   解答:A, C

   点评:TreeSet类实现了Set接口。Set的特点是其中的元素惟一,选项C正确。由于采用了树形存储方式,将元素有序地组织起来,所以选项A也正确。

   例题7:

   True or False: Readers have methods that can read and return floats and doubles.

   A. Ture

   B. False

   解答:B

   点评: Reader/Writer只处理Unicode字符的输入输出。float和double可以通过stream进行I/O.
  

   例题8:

   What does the following

   paint() method draw?

   1. public void paint(Graphics g) {

   2. g.drawString(“Any question”, 10, 0);

   3. }

   A. The string “Any question?”, with its top-left corner at 10,0

   B. A little squiggle coming down from the top of the component.

  

   解答:B

   点评:drawString(String str, int x, int y)方法是使用当前的颜色和字符,将str的内容显示出来,并且最左的字符的基线从(x,y)开始。在本题中,y=0,所以基线位于最顶端。我们只能看到下行字母的一部分,即字母‘y’、‘q’的下半部分。

   例题9:

   What happens when you try to compile and run the following application? Choose all correct options.

   1. public class Z {

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

   3. new Z();

   4. }

   5.

   6. Z() {

   7. Z alias1 = this;

   8. Z alias2 = this;

   9. synchronized(alias1) {

   10. try {

   11. alias2.wait();

   12. System.out.println(“DONE WAITING”);

  

   13. }

   14. catch (InterruptedException e) {

   15. System.out.println(“INTERR

   UPTED”);

   16. }

   17. catch (Exception e) {

   18. System.out.println(“OTHER EXCEPTION”);

   19. }

   20. finally {

   21. System.out.println

   (“FINALLY”);

   22. }

   23. }

   24. System.out.println(“ALL DONE”);

   25. }

   26. }

   A. The application compiles but doesn t print anything.

   B. The application compiles and print “DONE WAITING”

   C. The application compiles and print “FINALLY”

   D. The application compiles and print “ALL DONE”

   E. The application compiles and print “INTERRUPTED”
  

   解答:A

   点评:在Java中,每一个对象都有锁。任何时候,该锁都至多由一个线程控制。由于alias1与alias2指向同一对象Z,在执行第11行前,线程拥有对象Z的锁。在执行完第11行以后,该线程释放了对象Z的锁,进入等待池。但此后没有线程调用对象Z的notify()和notifyAll()方法,所以该进程一直处于等待状态,没有输出。
  

   例题10:

   Which statement or statements are true about the code listed below? Choose three.

   1. public class MyTextArea extends TextArea {

   2. public MyTextArea(int nrows, int ncols) {

   3. enableEvents(AWTEvent.

   TEXT_

   EVENT_MASK);

   4. }

   5.

   6. public void processTextEvent
 

   (TextEvent te) {

   7. System.out.println(“Processing a text event.”);

   8. }

   9. }

   A. The source code must appear in a file called MyTextArea.java

   B. Between lines 2 and 3, a call should be made to super(nrows, ncols) so that the new component will have the correct size.

   C. At line 6, the return type of processTextEvent() should be declared boolean, not void.

   D. Between lines 7 and 8, the following code should appear: return true.

   E. Between lines 7 and 8, the following code should appear: super.processTextEvent(te).
  

   解答:A, B, E

   点评:由于类是public,所以文件名必须与之对应,选项A正确。如果不在2、3行之间加上super(nrows,ncols)的话,则会调用无参数构建器TextArea(), 使nrows、ncols信息丢失,故选项B正确。在Java2中,所有的事件处理方法都不返回值,选项C、D错误。选项E正确,因为如果不加super.processTextEvent(te),注册的listener将不会被唤醒。

(责任编辑:IT教学网)

更多

推荐程序员考试文章