Exception和Error的異同
Exception和Error都繼承了Throwable類瞒渠,在Java中只有Throwable類型的實例才可以被拋出(throw)或者捕獲(catch)
Exception和Error體現(xiàn)了Java平臺設計者對不同異常情況的分類邓嘹。
Exception是程序正常運行中璧南,可以預料的意外情況留美。
Exception可以分為可檢查異常 checked 和 不檢查異常 unchecked窍荧。
可檢查異常如庭,在源代碼里必須進行顯示的捕獲處理茂附,這是編譯期檢查的一部分
不檢查異常,是指運行時異常抚太,例如NullPointerException, ArrayIndexOutOfBoundsExcep之類塘幅。這些異常通常是可以通過在編碼的時候避免的。
Error是指在正常情況下尿贫,不大可能出現(xiàn)的情況电媳,絕大部分的Error都會導致程序處于非正常,不看回復狀態(tài)庆亡。它不能被捕獲匾乓,比如OutOfMemoryError。
Throwable又谋、Exception拼缝、Error的結(jié)構(gòu)類圖
待補充