1. 程式人生 > 其它 >java基礎學習:異常機制03(自定義異常)

java基礎學習:異常機制03(自定義異常)

java基礎學習:異常機制03

  • 自定義異常:

    • 使用Java內建的異常類可以描述在程式設計時出現的大部分異常情況。除此之外,使用者還可以自定義異常,使用者自定義異常類,只需要繼承Exception類即可;

       

  • 在程式中使用自定義異常類,大體可分為以下幾個步驟:

    • 建立自定義異常

    • 在方法中通過throw關鍵字丟擲異常物件

    • 如果在當前丟擲異常的方法中處理異常,可以使用try..catch語句捕獲並處理;否則在方法的宣告出通過throws關鍵字指明要丟擲給方法呼叫者的異常,繼續進行下一步操作;

    • 在出現異常方法的呼叫者中捕獲並處理異常;

       

  • 總結:

    • 處理執行時異常,採用邏輯去合理規避同時輔助try-catch處理

    • 在多重catch塊後面,可以加一個catch(Exception)來處理可能會被遺漏的異常

    • 對於不確定的程式碼,也可以加上try..catch,處理潛在異常

    • 儘量去處理異常,切記只是簡單的呼叫printStackTrace()去列印輸出

    • 儘量新增finally語句塊去釋放佔用的資源

 

 

  • 程式碼案例1:自定義異常類


    /**
    * 自定義異常類
    */
    public class MyException extends Exception {


       //傳遞數字>10 ;丟擲異常

       private int detail;


       public MyException(int a) {
           this.detail=a;
      }

       //toSting:異常的列印資訊


       @Override
       public String toString() {
           return "MyException{" + detail + '}';
      }
    }

  • 程式碼案例:

    public class Test {

       //寫一個可能出現異常的方法

       public static void haha( int a) throws MyException{

           if(a>10){
               throw new MyException(a);//丟擲異常
          }
           System.out.println(a);
      }


       public static void main(String[] args) {


           try {
               haha(11);
          } catch (Exception e) {
               System.out.println("MyException-->"+e);
          }
      }

    }