问题 单项选择题

在oneMethod()方法运行正常的情况下,程序段将输出
public void test()
try oneMethod();
System.out.println("condition 1");
catch(ArrayIndexOutOfBoundsException e)
System.out.println("condition 2");
catch (Exception e)
System.out.println("condition 3");
finally
System.out.println("finally");

A.condition 1

B.condition 2

C.condition 3

D.condition 1
finally

答案

参考答案:D

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

解答题
单项选择题