如果出现 RuntimeException 异常, 那么就一定是你的问题
开发中有一种情况,就是用catch字句捕捉一个指定类型的异常,然后抛出一个自定义的异常,让其他开发人员可以知道到底是什么问题。
有一种情况,就是想要让代码自动释放资源,在C#中可以使用Using,在Java中直接使用try
try(Resource res=...){
do some work
}
这种块无论是正常退出,或者存在一个异常的时候,都会自动释放资源,就好像定义了finally块一样
使用异常处理的技巧:
1.异常处理不能代替简单的测试
2.不要过分的细化异常
3.利用异常层次结构
不要只抛出 RuntimeException 异常。应该寻找更加适当的子类或创建自己的异常类。
不要只捕获 Thowable 异常, 否则,会使程序代码更难读、 更难维护。
考虑受查异常与非受查异常的区别。
将一种异常转换成另一种更加适合的异常时不要犹豫。
4.不要压制异常
可以考虑对异常进行忽略
5.在检测错误时,“ 苛刻” 要比放任更好
- 不要羞于传递异常