【笔记】java核心技术-异常

一、异常的分类


RuntimeException这个名字容易让人产生混淆,实际上这里所讨论的都发生在程序运行时。


java语言规范将所有派生于Error 或者Exception的异常都称为未检查异常,所有其他的异常称为已检查异常编译器将检查是否为所有的已检查异常提供了处理器



二、声明异常

(1)不需要声明java的内部错误,即从Error继承的错误,任何代码都具有跑出这些异常的潜能,而我们对此没法控制。

同样,也不应该声明从RuntimeException继承来的异常。

总之,一个方法应该声明所有可能抛出的检查异常,而未检查异常要么没法控制(Error),要么应该避免其放生(RuntimeException)。


(2)如果在子类中覆盖了超类的方法,那么在子类方法声明的已检查异常不能比超类方法声明的异常的更通用(也就是说子类方法可以跑出更特定的异常,或者不抛出异常)。


三、抛出异常


四、创建异常类




五、捕获异常






六、异常处理器中抛出异常






七、finally子句


finally子句主要是用来释放资源的。






八、带资源的try语句

如果finally子句中抛出了和try块一样的异常,将会覆盖原来的异常,这时可以使用带资源的try语句


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值