java中的異常分類
Java 中的異常類,包括內置的異常類以及自定義的異常類,都直接或者間接地繼承至 java.lang.Throwable 類。
?
1. ?????? 兩個主要分支:
在 java.lang 包中,我們可以看到 Throwable 類有兩個直接子類: Error 類和 Exception 類,如圖所示:
?
?
?
? 圖 1. java異常類型層次 ???
?
??????? Error 類及其子類描述了 java 運行時系統的內部錯誤和資源耗盡錯誤。出現這樣的錯誤的,除了通知用戶,并接盡力使程序安全地終止之外,沒有更好的辦法。
?
??????? Exception 類的層次結構又分為兩個分支:一個分支由 RuntimeException 派生,另外一個分支包含除 RuntimeException 類之外的異常類。
?
?
?
?
2.????? 未檢查的異常 (unchecked exception) 和已檢查的異常 (checked exception)
?
未檢查的異常:派生至 Error 類和 RuntimeException 類的所有異常類 ( 圖中紅色所示 ) 。
已檢查的異常:除未檢查的異常類之外的異常類 ( 圖中黃色所示 ) 。
?
Java 的編譯器檢查代碼中所有的已檢查的異常類是否都提供了異常處理程序,如果沒有的話,將報錯;代碼中不需要顯示的聲明未檢查的異常,因為這些異常要么 Error ,代表 java 運行時系統的內部錯誤;要么是 RuntimeException ,這種錯誤是由程序員引起的錯誤,完全可以修正代碼解決。
posted on 2010-08-20 10:05 tobyxiong 閱讀(585) 評論(0) 編輯 收藏 所屬分類: java