java中异常主要有三类:检查异常,运行时异常,错误。
错误是由于外部原因无法预测,运行时异常是由于内部原因无法预测。

异常处理机制
try…catch:

  • 一个try可以多个catch
  • catch块:先处理小异常,再处理大异常,即Exception放在最后
  • finally:资源回收,不能使用return或throw,如果使用了,会导致try和catch中的return或throw失效。

异常类继承体系:
java类库读书笔记——异常

三类异常:
Checked异常:
只有java提供了Checked异常,这都是可以被处理的异常,如果没有处理,则编译时发生错误。
两种处理方式:

  • 知道怎么处理用try…catch
  • 不知道怎么处理,要在定义方法时抛出异常

Runtime异常体系:
可用try…catch

异常跟踪栈:
控制台打印的日志。
方法调用与异常的传播相反。

异常处理规则:
4个目标:

  • 代码混乱最小化
  • 捕获并保留诊断信息
  • 通知合适的人员
  • 采用合适的方式结束异常活动

1、不要过度使用
有时候可以sout,continue,就不用throw了,通过catch捕获异常,效率要差
异常只用于处理非正常的情况,不要用异常处理代替正常的流程控制
2、不要用过大的try块
3、避免用Catch All
printStackTrace()
4、不要忽略捕获到的异常
- 处理异常
- 重新抛出异常
- 合适的层处理异常

相关文章:

  • 2021-08-07
  • 2021-09-08
  • 2021-05-25
  • 2022-01-11
  • 2021-08-29
  • 2021-11-17
  • 2021-10-06
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-05-19
  • 2021-09-14
  • 2021-12-14
  • 2022-12-23
  • 2021-08-14
相关资源
相似解决方案