1.異常
- try檢測異常
- catch捕獲異常
- finally處理完異常最後的處理
2.運行時異常,編譯時異常的區別
3.處理異常的方式
- try catch
- 拋出異常
4.拋出異常
- 拋出運行時異常,throw new RuntimeException("");
- 拋出編譯時異常,throw new Exception(""); 必須繼續往上拋
5.throw和throws的區別
- throw用在方法體內,跟的是異常對象名稱,只能拋出一個異常,表示拋出異常
- throws跟在方法名後面,跟的是異常類名,可以跟多個異常類,表示拋出異常,由方法調用者來處理
參考:
1、throw代表動作,表示拋出一個異常的動作;throws代表一種狀態,代表方法可能有異常拋出
2、throw用在方法實現中,而throws用在方法聲明中
3、throw只能用於拋出一種異常,而throws可以拋出多個異常
6.finally
- 只要執行了try,就會執行finally,除非catch中執行了 System.exit(0); jvm退出了。
- finally一般不return,return 的是當時的值。
7.自定義異常類
- 運行時異常,class MyRunTimeException extends RuntimeException {...}
- 編譯時異常,class Myxception extends Exception {...}
8.帶參數的異常
- 提供一個帶參數的構造器
- 把參數傳給父類的構造器
class Myxception extends Exception {
public Myxception(String args) {
super(args);
}
}