Exception 和Error 都是繼承了Throwable類,在Java中只有Throwable類型的實(shí)例才可以被拋出或者捕獲,它是異常處理機(jī)制的基本類型。
對(duì)比Exception和Error
1、相同點(diǎn):Exception和Error都是繼承了Throwable類,在java中只有Throwable類型的實(shí)例才可以被拋出,它是異常處理機(jī)制的基本組成部分。
2、不同點(diǎn):Exception和Error是java設(shè)計(jì)者對(duì)不同異常情況的分類。Exception是程序正常運(yùn)行中可以預(yù)料并且應(yīng)該被捕獲,進(jìn)行相應(yīng)處理。Error是正常情況下不大可能出現(xiàn)的情況,絕大部分Error會(huì)導(dǎo)致程序處于非正常狀態(tài),不可恢復(fù),也不方便和不需要捕獲,常見(jiàn)的比如OutOfMemoryError之類,都是Error的子類。
Exception又分為可檢查(checked)和不可檢查(unchecked)異常,可檢查是在代碼里顯示的進(jìn)行捕獲處理,不可檢查是只有程序運(yùn)行時(shí)才會(huì)拋出比如常見(jiàn)的NullPointerException
推薦學(xué)習(xí):Java視頻教程