本帖最后由 王亚运 于 2012-11-16 09:16 编辑
关于异常抛出后执行顺序不解。。
这是day10练习4_16题。
原题是考察抛出异常后异常后面代码无法执行到,然后编译失败。
现在把无法执行到代码注释掉。
运行。
是先执行func()抛出的异常被catch()捕捉。
还是先执行fun()方法,被func()方法内的catch()捕捉?
先猜下运行结果吧。
知道的话,望指点。
运行结果:B D- class Demo
- {
- public static void func()
- {
- try
- {
- throw new Exception();
- //System.out.println("A");
- }
- catch(Exception e)
- {
- System.out.println("B");//为什么是先运行这个捕捉?
- }
- }
- public static void main(String[] args)
- {
- try
- {
- func();
- }
- catch(Exception e)
- {
- System.out.println("C");
- }
- System.out.println("D");
- }
- }
复制代码 谢谢观看.....
|