繼承結構:Error和Exception都是繼承於Throwable,RuntimeException繼承自Exception。java
Error和RuntimeException及其子類稱爲未檢查異常(Unchecked exception),其它異常成爲受檢查異常(Checked Exception)。函數
Error類通常是指與虛擬機相關的問題,如系統崩潰,虛擬機錯誤,內存空間不足,方法調用棧溢出等。如java.lang.StackOverFlowError和Java.lang.OutOfMemoryError。對於這類錯誤,Java編譯器不去檢查他們。對於這類錯誤的致使的應用程序中斷,僅靠程序自己沒法恢復和預防,遇到這樣的錯誤,建議讓程序終止。對象
Exception類表示程序能夠處理的異常,能夠捕獲且可能恢復。遇到這類異常,應該儘量處理異常,使程序恢復運行,而不該該隨意終止異常。繼承