检查型异常(Checked Exception)和非检查型异常(Unchecked Exception)的区别

Posted vicf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检查型异常(Checked Exception)和非检查型异常(Unchecked Exception)的区别相关的知识,希望对你有一定的参考价值。

最近温故spring事务相关知识点,我们知道Spring的事务管理默认只对出现运行期异常(java.lang.RuntimeException及其子类)进行回滚

(至于为什么spring要这么设计:因为spring认为Checked的异常属于业务的,程序猿需要给出解决方案而不应该直接扔该框架)

这里就引出一个小的知识点,什么是Checked Exception?什么是Unchecked Exception?

其实,Java语言规范对这两个定义十分简单,将派生于Error或者RuntimeException的异常称为Unchecked异常,所有其他的异常称为Checked异常

于是就顺手画了下面的脑图,一看就一目了然了

技术图片

以上是关于检查型异常(Checked Exception)和非检查型异常(Unchecked Exception)的区别的主要内容,如果未能解决你的问题,请参考以下文章

Java中Error和Exception的异同以及运行时异常(Runtime exception)与检查型异常(checked exception)的区别

java异常—检查异常(checked exception)和未检查异常(unchecked exception)

Java 检查异常(checked exception)和未检查异常(unchecked exception)区别理解

Java 基础 - check & unchecked exception

运行时异常和checked异常

运行时异常和checked异常