天天看點

java 中的 異常 處理

java 中的異常 如果沒有被 catch 那麼 異常相當于中斷

例如

1.至始至終沒有try catch

public class AAA {

    public void aaa(){
            int i = /;
            System.out.println("2");// 不會執行
    }
}
           
public class TTTTTTTTTT {

    public static void main(String[] args) {
        System.out.println("1");    // 會執行
        iAaa.aaa();
        System.out.println("last"); // 不會執行
    }
}
           

輸出結果

1 異常棧

2.被調用方法内部有一個try catch

public class AAA {

    public void aaa(){

        try {
            int i = /;
            System.out.println("2");// 不會執行
        } catch (Exception e) {
            System.out.println("aaa err");  // 會執行
    }
        System.out.println("aaa");// 會執行
    }
}
           
public class TTTTTTTTTT {

    public static void main(String[] args) {
        System.out.println("1");    // 會執行
        AAA iAaa = new AAA();
        iAaa.aaa();
        System.out.println("last"); // 會執行
    }
}
           

輸出結果

1

aaa err

aaa

last

僅外部有一個try catch

public class AAA {

    public void aaa(){
        int i = /;
        System.out.println("2");// 不會執行
    }
}
           
public class TTTTTTTTTT {

    public static void main(String[] args) {
        System.out.println("1");    // 會執行
        AAA iAaa = new AAA();
        try {
            iAaa.aaa();
        } catch (Exception e) {
            System.out.println("err");  // 會執行
        }
        System.out.println("last"); // 會執行
    }
}
           

輸出結果

1

err

last

被調用方法内部有一個try catch 外部也有一個try catch

public class AAA {

    public void aaa(){

        try {
            int i = /;
            System.out.println("2");// 不會執行
        } catch (Exception e) {
            System.out.println("aaa err");  // 會執行
    }
        System.out.println("aaa");// 會執行
    }
}
           
public class TTTTTTTTTT {

    public static void main(String[] args) {
        System.out.println("1");    // 會執行
        AAA iAaa = new AAA();
        try {
            iAaa.aaa();
        } catch (Exception e) {
            System.out.println("err");  // 不會執行
        }
        System.out.println("last"); // 會執行
    }
}
           

輸出結果

1

aaa err

aaa

last