七、异常机制

七、异常机制
        原理:当发现异常时,异常会回溯到main方法。
        原则:能自己处理的异常自己处理
                   当发现如IO引起的异常时,应把异常抛到传递IO地址的层上。

        异常方式:异常链和异常丢失
        1)异常链
                原因:当自己实现异常转译的时候,直接抛出的异常给另一个子系统处理的话,子系统只能抛出比该异常同级或更低级的异常,不方便添加更多的信息。
                异常链:通过对异常原因的再次封装 得到更高级的异常,从而使子系统更够添加更多的异常信息,得到更加完整的异常信息链。
                实例:
                try{
                    access the database
                }catch(SQLException e){
                    Throwable se = new ServletException("database error") ;
                    se.initCause(e) ;
                    throw se ;
                }

            
        2)异常丢失
                原理:Java的一个缺陷,当finally中嵌套着异常,该异常将会覆盖try中的异常。
                实例:
                public static void main(String[] args) {
                    try{ 
                        try{
new ATest().AException();
   }finally{
new ATest().BException();
   }
}catch(Exception e){
 e.printStackTrace();
}
     }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值