JavaLearning

异常

一、异常体系结构

二、异常的处理:抓抛模型

1. 异常处理的方式一:try-catch-finally的使用

 try{
 //可能出现异常的代码
 }catch(异常类型1 变量名1){
 //处理异常的方式1
 }catch(异常类型2 变量名2){
 //处理异常的方式2
 }catch(异常类型3 变量名3){
 //处理异常的方式3
 }
 ....
 finally{
 //一定会执行的代码
 }

说明:

理解:

2.异常处理的方式二:throws + 异常类型

3. try-catch-finally中finally的使用:

4. 注意点

方法重写的规则之一:

class SuperClass{  
   public void method() throws IOException{
      
   }   
}

class SubClass extends SuperClass{
   public void method()throws FileNotFoundException{
      
   }
}

三、如何自定义异常类?

class MyException extends Exception{  // 1-继承Exception
    // 2-序列号
    static final long serialVersion = -156435138L;
    // 3-构造方法
    public MyException(){

    }

    public MyException(String msg) {
        super(msg);
    }

}

四、手动抛出异常:throw

public class Test {

    public static void main(String[] args) throws MyException {

        int a = 10,b=0;
        if (b == 0) {
            throw new MyException("除数不能为0");
        }
    }
}