java中异常的继承结构
1、Object下有Throwable(可抛出的)
不管是错误还是异常都是可以抛出的。
2、Throwable下有两个分支:Error(不可处理的,直接退出JVM)和Exception(可处理的)
所有的错误只要发生,Java程序只有一个结果,那就是终止程序的执行。退出JVM,错误是不能处理的。
3、Exception下有两个分支:
- Exception的直接子类(Exceptionsubclass):编译时异常(要求程序员在编写程序阶段必须预先对这些异常进行处理,如果不处理编译器报错,因此得名编译时异常)
- RuntimeException: 运行时异常。(在编写程序阶段程序员可以预先处理,也可以不管)