java 自定義異常(基礎)


java自定義異常(基礎)

在java語言中允許用戶自定義異常類。自定義異常類不是系統監測到的異常,而是由用戶自己定義的異常。

自定義異常同樣需要try-catch-finally語句捕獲,但必須由用戶自己拋出異常(throw new MyException)

用戶自定義異常類時,只需要繼承Exception類即可。

步驟:

  1. 創建自定義異常類
  2. 在方法中通過throw關鍵字拋出異常對象。
  3. 如果在當前拋出異常的方法中處理異常,可以使用try-catch語句捕獲異常並處理;否則在方法的聲明處通過throws關鍵字指明要拋出給方法調用者的異常,繼續進行下一步操作。
  4. 在出現異常方法的調用者中捕獲並處理異常。

代碼示例

//首先自定義一個異常
package exception.Demo02;
//自定義的異常類
public class MyException  extends Exception {//繼承Exception類
    //傳遞數字>10拋出異常
    private int detail;

    public MyException(int a) {
        this.detail = a;
    }
//異常的打印信息     toString
    @Override
    public String toString() {
        return "MyException{" + detail + '}';
    }
}
//寫一個測試類
package exception;
import exception.Demo02.MyException;
public class Test {//方法
    //可能會存在異常的方法
    static void test(int a) throws MyException{//拋出異常
        System.out.println("傳遞的參數為: "+a);
         if(a>10){
             throw new MyException(a);
         }
        System.out.println("ok");
    }
    public static void main(String[] args) {
        try {
            test(1);
        } catch (Exception e) {
            System.out.println("MyException->"+e);
        }
    }
}

實際應用中的經驗總結(摘自狂神說java)

  1. 處理運行時異常時,采用邏輯去合理規避同時輔助try-catch處理
  2. 在多重catch塊后面,可以加一個catch(Exception)來處理可能會被遺漏的異常。
  3. 對於不確定的代碼,也可以加上try-catch,處理潛在的異常。
  4. 盡量添加finally語句塊去釋放占用的資源。

狂神說java


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM