try catch多个catch捕获问题

来源:互联网 发布:工商银行网络银行 编辑:程序博客网 时间:2024/05/21 17:01
代码一:
                   
try{throw new Exception();}catch (NullPointerException ee) {//异常一System.out.println("11111111111");}catch (Exception e) {//异常二System.out.println("22222222222");}

输出结果  
22222222222

代码二:
            
try{throw new NullPointerException();}catch (NullPointerException ee) {//异常一System.out.println("11111111111");}catch (Exception e) {//异常二System.out.println("22222222222");}

输入结果:
11111111111
如果此时 异常一 里再有异常,且是Exception 的子异常或者Exception异常 不会被异常二捕获到的 而是需要重新try catch 被重新catch的捕获 
try{throw new NullPointerException();}catch (NullPointerException ee) {//异常一System.out.println("11111111111");try {throw new Exception();} catch (Exception e2) {// 异常三System.out.println("33333333333");}}catch (Exception e) {//异常二System.out.println("22222222222");}


输出结果为:
1111111111133333333333
项目中对异常统一处理,异常三 处要增加 和 异常二 处一样的处理方案   异常三处别忘记添加相应代码 
0 0
原创粉丝点击