首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

[Java 基礎範例] 自訂異常類與 try-catch 捕獲處理

     編輯:Java 相關知識

程式功能

示範繼承 Exception 建立自訂異常 MyException,提供三種建構子(無參、訊息、訊息+錯誤碼),並在 main 中透過 try-catch 捕獲展示 getMessage()、toString()、printStackTrace()、自訂 val() 取錯誤碼。

完整代碼

class MyException extends Exception {
    private int i;
    public MyException() {}
    public MyException(String msg) { super(msg); }
    public MyException(String msg, int x) { super(msg); i = x; }
    public int val() { return i; }
}

public class DemoException {
    public static void a() throws MyException { throw new MyException(); }
    public static void b() throws MyException { throw new MyException("Originated in b()"); }
    public static void c() throws MyException { throw new MyException("Originated in c()", 47); }

    public static void main(String[] args) {
        try { a(); } catch (MyException e) { e.getMessage(); }
        try { b(); } catch (MyException e) { e.toString(); }
        try { c(); } catch (MyException e) {
            e.printStackTrace();
            System.out.println("error code: " + e.val());
        }
    }
}

關鍵概念

  • 自訂異常必須繼承 Exception(受檢異常)或 RuntimeException(非受檢)。
  • 建構子鏈調用 super(msg) 保留錯誤訊息。
  • 可擴充自訂欄位(如錯誤碼 i)並提供存取方法。
  • printStackTrace() 輸出完整堆疊軌跡,除錯首選。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved