1. Exception
- Exception 代表程序正常运行过程中可以预料到的意外情况,应该被开发者捕获并进行相应处理。
2. Error
- Error 指在正常情况下不太可能出现的情况。
- 大部分 Error 导致程序处于不正常、不可恢复的状态,所以不便也不需被开发者捕获,因为这个情况下你捕获了也无济于事。
3. Throwable
- Exception 和 Error 都是继承自
Throwable类。 - 在Java代码中,只有继承自
Throwable的实例可以被throw或catch。
4. 注意事项
4.1 捕获特定的异常
- 避免捕获通用的
Exception异常,而应该捕获特定的异常。
软件工程是一门协作的艺术,在日常的开发中我们有义务使自己的代码能更直观、清晰的表达出我们想要表达的信息。
但是如果你什么异常都用了Exception,那别的开发同事就不能一眼得知这段代码实际想要捕获的异常,并且这样的代码也会捕获到可能你希望它抛出而不希望捕获的异常。
4.2 不要“吞”了异常
- 捕获异常后,应将异常信息输出到日志,不要仅仅使用
e.printStackTrace()。
如果我们捕获了异常,不把异常抛出,或者没有写到日志里,那会出现什么情况?线上除了bug莫名其妙的没有任何的信息,你都不知道哪里出错以及出错的原因。

最低0.47元/天 解锁文章
1102

被折叠的 条评论
为什么被折叠?



