@齐之齐 Java异常处理

  1. @齐之齐 Java异常处理

异常的处理:
异常的处理分为消极的处理(自己处理不了,就往调用它的地方上抛throws,异常没有解决,只是抛出)和积极处理(异常捕获,捕捉异常通过try-catch语句或者try-catch-finally语句实现)消极的处理:语法:public void m1() throws 异常类名1,异常类名2{}特点:相当于推卸责任,最终问题依然无法得到解决。允许编译通过。当上抛的异常为非运行(已检查)时异常时,调用此方法的调用者必须处理。当上抛的异常为运行(未检查)时异常时,可以处理可以不处理。

积极的处理:(异常捕获)将异常直接捕获,并且做出处理语法:
try{
//异常代码 }
catch(异常类名 引用名){ //当异常产生执行的代码 }
try 后的catch代码块 只能匹配成功一个catch后声明的异常为父类时,它能够捕捉的异常为它本身+所有子类异常(多态的体现)
注意:catch代码块捕获异常时,子类异常必须定义在父类异常前面,否则会编译出错finally代码块:一定会执行此代码块中的代码,常用来关闭资源。
try{
}catch(){
}finally{ //无论是否产生异常,一定会去执行的代码 }
注意:finally代码块中不要定义return语