不定项选择题
有以下程序:
public void test()
{
try
{
oneMethod();
System.out.println("condition 1");
}
catch (ArrayIn(JexOutOfBoundsException e) {
System.out.println("condition 2");
}
catch(Exception e) {
System.out.println("condition 3");
}
finally {
System.out.printIn("finally");
}
}
在oneMethod()方法运行正常的情况下将显示______。
A.Condition 1 B.condition 2
C.condition 3 D.finally
【正确答案】
A、D
【答案解析】如果try块中的语句在执行时发生异常,则执行从该处中断而进入catch块,根据异常的类型进行匹配,最前面的优先进行匹配比较。只要该异常是catch中指定的异常的子类就匹配成功,进而执行相应的catch中的内容,而finally块中的内容无论是否发生异常都将被执行。