问题
单项选择题
在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.pritln("finally"); } }
A.condition 1
B.condition 2
C.condition 3
D.condition 1
答案
参考答案:D
解析:如果try块中的语句在执行时发生异常,则执行从该处中断而进入 catch块,根据异常的类型进行匹配,最前面的优先进行匹配比较,只要该异常是catch中指定的异常的子类就匹配成功进而执行相应的catch中的内容,而finally块中的内容无 论是否发生异常都将被执行。