异常的结构

在 Java 中,所有的异常都有一个共同的父类 Throwable(可抛出)。

异常的介绍

Throwable: 有两个重要的子类:Exception(异常)和 Error(错误),二者都是 Java 异常处理的重要子类,各自都包含大量子类。

Error(系统处理不了的)

大多数错误与代码编写者执行的操作无关,而表示代码运行时 JVM(Java 虚拟机)出现的问题。在 Java中,错误通过Error的子类描述。 

Exception(系统能处理的)

RuntimeException(运行时异常):

空值对象引用、除数为零或数组越界,则分别引发运行时异常(NullPointerException、ArithmeticException)和 ArrayIndexOutOfBoundException。

IOException(编译时异常):

Eofexception和FileNotFoundEception

(见大佬图片)
异常 “Exception”

如何处理:

在 Java 应用程序中,异常处理机制为:抛出异常,捕捉异常。

使用 try(){可能出错的代码
}catch(可能出的异常){
出异常怎么办 }

try(){可能出错的代码
}catch(可能出的异常){
出异常怎么办 } finally{一定会执行,除非退出jvm
}
// System。exit(0)退出jvm

不处理的异常printStackTrace方法会被jvm调用,并打印出异常堆信息

只要程序出异常,jvm会自动创建一个相应的异常类的对象。

相关文章: