基礎知識: Java異常類

Java異常類層次結構圖:
這裏寫圖片描述
通常,Java的異常(包括Exception和Error)分爲 可查的異常(checked exceptions)和不可查的異常(unchecked exceptions) 。
可查異常(編譯器要求必須處置的異常): 正確的程序在運行中,很容易出現的、情理可容的異常狀況 。 可查異常雖然是異常狀況,但在一定程度上它的發生是可以預計的,而且一旦發生這種異常 狀況,就必須採取某種方式進行處理。

除了RuntimeException及其子類以外,其他的Exception類及其子類都屬於可查異常。這種異常的特點是Java編譯器會檢查它,也就是說,當程序中可能出現這類異常,要麼用try-catch語句捕獲它,要麼用throws子句聲明拋出它,否則編譯不會通過。

不可查異常(編譯器不要求強制處置的異常):包括運行時異常(RuntimeException與其子類)和錯誤(Error)。

算術異常類:ArithmeticExecption

空指針異常類:NullPointerException

類型強制轉換異常:ClassCastException

數組負下標異常:NegativeArrayException

數組下標越界異常:ArrayIndexOutOfBoundsException

違背安全原則異常:SecturityException

文件已結束異常:EOFException

文件未找到異常:FileNotFoundException

字符串轉換爲數字異常:NumberFormatException
這裏寫圖片描述
1. 粉紅色的是受檢查的異常(checked exceptions),其必須被 try{}catch語句塊所捕獲,或者在方法簽名裏通過throws子句聲明.受檢查的異常必須在編譯時被捕捉處理,命名爲 Checked Exception 是因爲Java編譯器要進行檢查,Java虛擬機也要進行檢查,以確保這個規則得到遵守.
2. 綠色的異常是運行時異常(runtime exceptions),需要程序員自己分析代碼決定是否捕獲和處理,比如 空指針,被0除…
3. 而聲明爲Error的,則屬於嚴重錯誤,如系統崩潰、虛擬機錯誤、動態鏈接失敗等,這些錯誤無法恢復或者不可能捕捉,將導致應用程序中斷,Error不需要捕捉。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章