java运行时异常和抛出异常的区别

简介: java运行时异常和抛出异常的区别与张航日常交流的心得,当在写事务回滚的时候,我们会利用异常来执行是否提交和回滚。异常分为运行时异常与受查异常。运行时异常,是 RuntimeException 类或其子类,即只有在运行时才出现的异常。如,NullPointerException、ArrayIndexOutOfBoundsException、IllegalArgumentException 等均属于运行时异常。这些异常由 JVM 抛出,在编译时不要求必须处理(捕获或抛出)。但,只要代码编写足够仔细,程序足够健壮,运行时异常是可以避免的。受查异常,也叫编译时异常,即在代码编写时要

java运行时异常和抛出异常的区别

与张航日常交流的心得,

当在写事务回滚的时候,

我们会利用异常来执行是否提交和回滚。

异常分为运行时异常与受查异常。

运行时异常,是 RuntimeException 类或其子类,即只有在运行时才出现的异常。如,

NullPointerException、ArrayIndexOutOfBoundsException、IllegalArgumentException 等均属于

运行时异常。这些异常由 JVM 抛出,在编译时不要求必须处理(捕获或抛出)。但,只要代

码编写足够仔细,程序足够健壮,运行时异常是可以避免的。

受查异常,也叫编译时异常,即在代码编写时要求必须捕获或抛出的异常,若不处理,

则无法通过编译。如 SQLException,ClassNotFoundException,IOException 等都属于受查异常。

RuntimeException 及其子类以外的异常,均属于受查异常。当然,用户自定义的 Exception

的子类,即用户自定义的异常也属受查异常。程序员在定义异常时,只要未明确声明定义的

为 RuntimeException 的子类,那么定义的就是受查异常。

14.png


14.png

目录
相关文章
|
1月前
|
Java
Java isBlank和isEmpty的区别
JavaisBlank和isEmpty的区别
17 0
|
1月前
|
Java
Java中的异常链:从根源到解决方案
Java中的异常链:从根源到解决方案
37 0
|
1月前
|
Java 关系型数据库 MySQL
在Java的反射中,Class.forName和ClassLoader的区别
在Java的反射中,Class.forName和ClassLoader的区别
36 3
|
1月前
|
Java Spring 容器
[JavaWeb]——过滤器filter与拦截器Interceptor的使用、执行过程、区别
[JavaWeb]——过滤器filter与拦截器Interceptor的使用、执行过程、区别
|
2天前
|
JavaScript 前端开发 Oracle
java和JavaScript的区别
java和JavaScript的区别
6 3
|
3天前
|
存储 Java 程序员
JavaSE&Java的异常
JavaSE&Java的异常
19 0
|
19天前
|
Java 关系型数据库 MySQL
大厂面试题详解:Java抽象类与接口的概念及区别
字节跳动大厂面试题详解:Java抽象类与接口的概念及区别
40 0
|
19天前
|
Java
Java中的异常类总结
Java中的异常类总结
|
30天前
|
Java
java的 isEmpty 和 isBlank 区别?
java的 isEmpty 和 isBlank 区别?
8 0
|
1月前
|
SQL Java
java中的异常
java中的异常
10 1