關閉→
當前位置:知科普>生活妙招>exception和error區別

exception和error區別

知科普 人氣:1.87W

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

exception和error區別

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

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

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

TAG標籤:#exception #Error #