- 异常处理不能代替简单的测试: 与执行简单的测试相比,捕获异常所花费的时间大大超过了前者,因此,使用异常的基本规则是:只在异常情况下使用异常机制.
- 不要过分地细化异常: 如果可以,有必要将整个任务包装在一个try语句块之中,这样,当任何一个操作出现问题时,整个任务都会被取消.
- 利用异常层次结构:
- 不要只抛出RuntimeException异常.应该寻找更加适当的子类或创建自己的异常类.
- 不要只捕获Throwable异常,否则,会使程序代码更加难读,更难维护.
- 未检查异常包括:派生于Error类或RuntimeException类的异常,其余的为以检查异常.
- 将一种异常转换成另一种更加适合的异常时不要犹豫.例如在解析某个文件中的一个整数时,将未检查异常NumberFormatException捕获,并包装转换为IOException或者MySubsystemException(自己定义的异常)的子类.
- 在检查错误时,"苛刻"要比放任更好
- 不要羞于传递异常: 有时,传递异常要比捕获这些异常更好,让高层次的方法通告用户发生了错误,或者放弃不成功的命令更加适宜.
- 早抛出,晚捕获.
异常处理注意的几点问题
最新推荐文章于 2024-01-17 17:36:31 发布