java异常类
最上级接口类:Throwable
Throwable类有两个直接子类:
Error:代表了JVM本身的错误。错误不能被程序员通过代码处理。例如:JVM的内存溢出,系统崩溃,一般的,程序不会从错误中恢复。Error有两个典型的错误实现类StackOverflowError和OutOfMemoryError
Exception:代表程序运行时发送的各种不期望发生的事件。可以被Java异常处理机制使用,是异常处理的核心
Exception又分为两类:
CheckedException(编译时异常):需要用try catch显示的捕获,对于可恢复的异常使用CheckedException。最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。例如要打开一个不存在文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。
RuntimeException(运行时异常):不需要捕获,对于程序异常(不可恢复)的异常使用RuntimeException。运行时异常是可能被程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略。
以下是异常类的各种继承关系图: