Throwable是java中异常和错误的顶层父类,只有继承Throwable类的子类才能够通过throws语句或者java虚拟机抛出去
Throwable的常用方法:
- String getMessage() 异常信息的简单描述
- String toString() 异常信息的详细描述 全类名+异常信息
- void printStackTrace()打印异常信息,打印栈追踪信息
Throwable有两个子类
Error类一般表示与虚拟机有关的问题,如系统崩溃、内存溢出、方法调用栈溢出、虚拟机错误等问题,对于出现这样的错误,仅靠程序本身是无法修复的,需要终止程序,修改代码
Exception类,表示的是程序可以处理的异常,如空指针异常、数组越界异常、没有元素异常、类型转换异常等等。
Exception 异常的分类:
异常分为两大类:
- 运行时异常(RuntimeException或者是其子类)
编译时异常(除了运行时异常就是编译时异常)
运行时异常(RuntimeException)运行时异常,就是编译通过,运行时出现异常
声明这个方法、调用这个方法都可以不适用throws抛出异常
不受子父类继承关系的影响
注意:如果出现了运行时异常一般都是选择停止程序,修改代码
编译时异常( checked Exception)编译不通过,出现编译异常,Eclipse都会提示