網站首頁 學習教育 IT科技 金融知識 旅遊規劃 生活小知識 家鄉美食 養生小知識 健身運動 美容百科 遊戲知識 綜合知識
當前位置:趣知科普吧 > 生活小知識 > 

exception和error區別

欄目: 生活小知識 / 發佈於: / 人氣:1.96W

以java爲例,其exception和Error的區別如下:

exception和error區別

1、Exception和Error都繼承了Throwable類,在java中只有Throwable類型的實例纔可以被拋出(Throw)或者捕捉(catch),它是異常處理機制的基本組成類型。Exception是程序正常運行中,可以預料的意外情況,可能並且應該被捕獲,進行相應的處理。

2、Error指在正常情況下,不大可能出現的情況,絕大部門的Error都會導致程序處於非正常的,不可恢復狀態。既然是非正常情況,所以不便於也不需要捕獲。比如常見的OutOfMemoryError之類,都是Error的子類。

Exception類又分爲可檢查異常(checked)和不檢查異常(unchecked),可檢查異常在源碼裏必須顯示的進行捕獲處理,這是編譯期檢查的一部分。不檢查異常就是所謂的運行時異常,類似NullPointerException,ArrayIndexOutOfBoundsException之類,通常是可以編碼避免的邏輯錯誤。

Tags:exception Error