一.異常與錯(cuò)誤的區(qū)別
再講異常之前我們就應(yīng)該要知道異常和錯(cuò)誤的區(qū)別
Error類和Exception類的父類都是throwable類,他們的區(qū)別是:
Error類一般是指與虛擬機(jī)相關(guān)的問(wèn)題,如系統(tǒng)崩潰,虛擬機(jī)錯(cuò)誤,內(nèi)存空間不足,方法調(diào)用棧溢等。對(duì)于這類錯(cuò)誤的導(dǎo)致的應(yīng)用程序中斷,
僅靠程序本身無(wú)法恢復(fù)和和預(yù)防,遇到這樣的錯(cuò)誤,建議讓程序終止。
Exception類表示程序可以處理的異常,可以捕獲且可能恢復(fù)。遇到這類異常,應(yīng)該盡可能處理異常,使程序恢復(fù)運(yùn)行,而不應(yīng)該隨意終止異常。
二.異常的體現(xiàn)分類:
1.checked 異常檢查期異常 java.lang.Excetion 在編譯期需要人工處理否則編譯失?。?span style="line-height: 1.5; background-color: rgb(255, 255, 0);">Exception的子類除了運(yùn)行期異常都是檢查期異常
2.非Checked異常運(yùn)行時(shí)異常 java.lang.RuntimeException 不需要處理的直接能編譯通過(guò):所有的RuntimeException以及其子類都是運(yùn)行異常