异常
异常类:
顶级异常类:Throwable
Error类和Exception类为Throwable的子类\
如何区分异常和错误:
Error是一种很严重的异常,无法通过处理,只能事先避免
Exception是可以通过代码进行修正的,正确修正后程序可以继续进行
异常分类(Exception):
运行时异常:可以通过编译但是运行时可能出现
非运行时异常:(已检测异常)在编译时就会提示可能出现的异常,如果不处理就会编译失败
异常处理
积极处理
try{
//可能发生异常的代码块
}catch(可能发生的异常类 e){
//捕获异常后执行的代码块
}
消极处理
throw//表示直接抛出一个异常
public void exceptionTest() throws Exception {
throw new Exception();
}
throws//表示当前方法不处理异常,而是抛出给方法的调用处去进行更好的处理
finally
try{
}catch(可能发生的异常类 e){
}finally{
//无论是否发生异常最后一定会被执行到的代码块.比较适合做资源释放工作
}
自定义异常
//自定义异常类必须继承Exception类
public class MyException extends Exception{
public MyException(String message){
super(message);
}
}