异常的总结

Throwable异常错误的父类。
直接的子类:
error,Exception
error系统级错误
Exception异常的父类,RuntimeException及其子类是运行时异常。不用捕获。其他的都是编译异常,必须处理被捕获处理。
异常的作用就是不让正常流程中断,给出正常异常的备用方案。让异常错误情况恢复正常流程。
编译异常:提示调用者,可以进行备用方案处理。
运行异常:就是让程序挂掉,因为程序有问题。

异常准则:
1.碰到异常,确认自己否是可以处理,能处理就处理,消耗掉这个异常,不可以抛出去。

2.无论捕获异常,还是抛出异常,一定要把异常范围限制在最小。不同的异常可能有不同的处理情况。

3.最好值捕获抛出异常的请求方法,如果一段逻辑代码中很多请求方法中都有异常,可以全部try一起,捕获处理。但是范围尽量小。

4.不要用异常控制正常的语句流程,异常就是用来处理不正常的情况的,trycatch的效率比较慢。所以能不用就不用。

5.转义异常,比如说底层异常很多个,需要调用方处理,但是对于调用方可能就只关系这个接口的异常情况,所以可以把相关的异常用统一的异常封装抛出去。让调用方统一处理。

6.编译异常的时候,改为运行时异常,场景:如果碰到编译异常,但需要停止程序的。

7.显示捕获运行时异常。正常来说,运行时不用捕获,他的目的就是让程序挂掉。但是如果需要对异常统计,调试,或者相应的信息友好的返回给调用方。

8.封装异常的时候不要抛弃本来的异常信息。5         throw new MyBusinessException("A message that describes the error.", e);
 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值