淺析Java的異常處理機制

Thorwable類所有異常和錯誤的超類,有兩個子類Error和exception,分別表示錯誤和異常。

其中異常類Exception又分爲:運行時異常(RuntimeException)和檢查異常(Checked Exception)。

兩者的區別:
Error和Exception
Error是程序無法處理的錯誤,比如OutOfMemoryError、ThreadDeath等。這些異常發生時,java虛擬機(JVM)一般會選擇線程終止。
Exception是程序本身可以處理的異常,這種異常分兩大類:運行時異常和非運行時異常。程序中應當儘可能去處理這些異常。

運行時異常和非運行時異常
運行時異常都是RuntimeException類及其子類異常,如NullPointerException、IndexOutOfBoundsException等,這些異常是不檢查異常,程序中可以選擇捕獲處理,也可以不處理。這些異常一般是有程序邏輯錯誤引起的,程序應該從邏輯角度儘可能避免這類異常的發生。
非運行時異常是RuntimeException以外的異常,類型上屬於Exception類及其子類。從程序角度講是必須進行處理的異常,如果不處理,程序就不能編譯通過。如IOException、SQLException等以及用戶自定義的Exception異常,一般情況下自定義檢查異常。

發佈了21 篇原創文章 · 獲贊 3 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章