异常处理机制

Java程序中的异常对象,都是派生于Throwable类的一个实例。

异常层次结构

派生于Error类和RuntimeException类的异常称为未检查异常,其他所有异常为已检查异常,已检查异常必须异常处理,抛出或者捕获

抛出异常格式:throws Exception 或 throws EventException , LSException

注意:子类方法声明的已检查异常不能比超类更通用(范围更大),如果超类没有抛出,则子类只能捕获。

未检查异常要么不可控制(Error),要么避免发生(RuntimeException)

try {
    Object obj = new Object();
} catch (Exception e) {
    e.printStackTrace();
} finally {

}

捕获异常可以必须有try,catch和finally其中一个,catch可以有多个,但是异常范围不能递减。

  • 如果没有异常,执行完try和finally。
  • try抛出异常,catch捕获不到,终止try剩余代码,执行finally,然后抛出异常给调用者。
  • try抛出异常,catch可以捕获,终止try剩余代码,执行catch,finally。

如果finally出现return,会覆盖之前return的结果,并且finally中对return的对象进行改变,也可以影响结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值