異常是指程序運行時發生的錯誤。數組
Throwable是全部異常的父類,它有兩個子類:Error和Exception。指針
1.Error表示程序在運行期間發生了很是嚴重的錯誤,而且該錯誤是不可恢復的。Error不須要捕捉。如:OutOfMemoryError。編譯器
2.Exception是可恢復的異常。它包括2種異常:檢查異常和運行時異常。io
2.1檢查異常(Check Exception)編譯
好比IOexception、SQLException和FileNotFoundException都是檢查異常。它發生在編譯階段,編譯器會強制程序去捕獲此類異常,須要在編譯時用try-catch捕獲。exception
2.2運行時異常程序
發生在運行時階段,編譯器不會檢查運行時異常。好比空指針異常,算數運算異常,數組越界異常等。若是代碼產生RuntimeException異常,則須要經過修改代碼進行避免。im