运行时异常和非运行时异常的选择

思维导图
这里写图片描述
定义
1、非运行时异常:是需要显示用try-catch捕捉处理的异常,如IOException等
2、运行时异常:不需要显示捕捉,如NullPointException等,常见于程序逻辑问题导致
背景
异常处理理论上有两种基本模型。终止模型,表示异常一旦发生就无法挽回,不能执行;恢复模型,功效类似于一个分支,通常希望异常被处理之后能继续执行程序。
区别
1、运行时异常:调用代码不能继续执行,需要立即终止。
2、非运行时异常:调用代码需要进一步处理和恢复
原则
1、非运行时异常是强迫使用者处理联动的操作,如sql执行失败需要关闭连接、回滚事务。此类异常若自己可以把关联处理掉则可转运行时异常。
2、运行时异常用于程序运行的检验、如前置条件校验、后置条件校验。
3、运行时异常用于运行的必要条件不具备时阻断程序运行,如连接服务器失败。
4、业务异常一般是条件检验的异常,基本用运行时异常声明。
5、系统在设计时,一般用检查异常标注可能存在的异常,用于告知开发者。
6、工具类中一般直接抛出原始的非运行时异常。

猜你喜欢

转载自blog.csdn.net/q563573095/article/details/80178998