异常Exception:异常不是错,是意外
异常分类
运行异常(未检查异常):可处理,可不处理
RuntimeException以及子类都为运行异常
编译异常(检查异常):必须处理
Exception以及子类(不包括RuntimeException)都是编译异常
异常处理
两种处理方式:
1、抛出异常 throws
在方法名后 抛出 throws 异常类型
2、try。。。catch处理
try{
可能出现异常的代码块;
}catch(异常类型 异常对象){
//异常处理
}finally{//可以没有finally
//保证必须执行的代码
}
自定义异常
定义异常:
1、创建类 继承异常类
2、通过构造函数 构造新的异常信息