异常概述
异常的作用
增强程序健壮性;可维护性更高。
异常处理
异常处理不是修复错误,而是将错误抛出到日志或者控制台。
try {
//需要被检测的语句。}
catch(异常类 变量) { //参数。
//异常的处理语句。 }
finally {
//一定会被执行的语句。 }
权限修饰符 返回值类型 方法名(形参列表) throws 异常类型1,异常类型2….{
......
}
Throwable常用方法
finally使用格式:
try{
}catch(异常类型 异常变量){
}finally{
//释放资源的代码
}
throws和throw的区别
1.throws:是有可能抛出的异常;用在方法类名后;与异常同名;表示异常的一种可能性并不一定发生;
2.throw:抛出一个具体的异常;抛出一个具体的异常;用在方法体内跟在异常对象名后;执行throw是一定抛出异常;
注意事项:
1.子类在重写父类方法时,抛出的异常不能放大
2.父类有多个异常时,子类只能抛出父类已有的异常
自定义异常
格式:public class 异常类名 extends Exption{
无参构造;
有参构造;
}