考试首页 | 考试用书 | 培训课程 | 模拟考场 | 考试论坛  
全国  |             |          |          |          |          |         
  当前位置:计算机等级 > 二级考试 > Java语言程序设计 > 模拟试题 > 文章内容
  

全国计算机等级考试Java试题及答案(9)

中华IT学院   【 】  [ 2016年2月20日 ]

下列程序中在oneMethod()方法运行正常的情况下将显示什么?说出理由。

  (A D)

 public viod test(){

    try {oneMethod();

           System.out.println(“情况1”);

} catch (ArrayIndexOutofBoundsException e){

           System.out.println(“情况2”);

} catch (Exception e){

           System.out.println(“情况3”);

} finally{

           System.out.println(“finally”);

}

}

A.情况1      B.情况2      C.情况3     D.finally

解:如果try子句中的语句在执行时发生异常,则执行从该处中断而进入catch块,根据异常的类型进行匹配,最前面的优先进行匹配比较,只要该异常是catch中指定的异常的子类就匹配成功进而执行相应的catch中的内容,而finally块中的内容无论是否发生异常都将被执行。

因为try子句中的语句在执行时正常,所以将显示选项A与选项D的内容。

给出下列不完整的方法:

  1)               

  2){ success = connect();

  3)if (success = -1) {

  4)  throw new TimedOutException();

  5)  }

  6)}

  TimedOutException不是一个RuntimeException运行时异常类。下面的哪些声明可以被加入第一行完成此方法的声明?说明理由。  (B C)

A.       public void method()

B.       public void method() throws Exception

C.       public void method() throws TimedOutException

D.      public void method() throw TimedOutException

E.       public throw TimedOutException void method()

解:如果程序在运行的过程中抛出异常,而这个异常又不是RuntimeException或者Error,那么程序必须捕获这个异常进行处理或者声明抛弃(throws)该异常,捕获异常可以使用try{}catch(){}语句,而抛弃异常在方法声明时声明,可在方法的声明后面加上throws XxxxException,抛弃多个异常时在各异常间使用逗号(,)分隔。

题目中的程序在运行时抛出的不是一个RuntimeException,所以必须捕获或者抛弃,而程序有没有捕获,所以应该在方法声明时声明抛弃。由于Exception是所有异常的父类,所以当然也可以代表TimeOutException了,选项B和C都是可以的。

 

分享到:
本文纠错】【告诉好友】【打印此文】【返回顶部
将考试网添加到收藏夹 | 每次上网自动访问考试网 | 复制本页地址,传给QQ/MSN上的好友 | 申请链接 | 意见留言 TOP
关于本站  网站声明  广告服务  联系方式  站内导航  考试论坛
Copyright © 2007-2013 中华考试网(Examw.com) All Rights Reserved