- Throwable异常体系
- Error与Exception的区别
- Exception的两种处理机制
- 自定义异常
JAVA异常机制:
1、java中所有异常的根类为throwable类
2、同时子类error 与子类 exception 分别继承了throwable类
3、error通常指系统级层面的错误,比如系统内层溢出,系统崩溃
4、exception则是程序级层面能够预见或者解决的异常,后续我们所讲的异常的捕获与处理也是指exception。
5、exception 通常分为编译时异常与运行时异常,其中编译时异常是指代码在编译过程中发现的异常,常见的编译时异常有系统IOException、SqlException 、ClassNotFundException,运行时异常则是指代码在运行时发生的异常,常见的运行时异常有:数组越界异常,空指针异常,算数异常
6、异常的捕获机制
(1)、捕获并处理机制
try{
逻辑代码
}catch(捕获的异常种类){
异常捕获后的处理模块
}finally{
非系统级别发生异常,程序最后一定会执行的模块,那怕逻辑代码块中存在return,也会先执行完成finally模块,通常用于资源关闭
}
(2)、向上抛机制
catch到exception后,不做处理,可以向上抛 throw 关键字(在方法中抛出一个异常对象并且要在方法声明上使用throws 关键字将异常标识出来,以便调用方来处理异常)(向上指方法的调用方),但是不能一直