Throwable 類是 Java 語言中所有錯誤或異常的超類。它的兩個子類分別是Error(錯誤)和Exception(異常)。Exception又分為CheckedException和UnCheckedException,其中UncheckedException就是我們常說的RuntimeException,UncheckedException是RuntimeException的子類。一般來說RuntimeException是不希望通過捕獲來處理的,應該在編程的時候就考慮到并處理它。Unchecked和Checked的異常沒有功能性的區別,檢查類型的異常能實現的功能,非檢查型異常也能實現,他倆在使用的效果上也沒有區別。
1.Error
Error有幾個關鍵點:(1)Error發生的時間是不確定的;(2)Error一般都是底層的資源或者是系統層面的錯誤,例如內存溢出等;(3)Error的捕獲應該在系統層面上進行
注:平常的編程中Error這種錯誤是不長見的,所以就不多說了。
2.RuntimeException(運行時異常)
常見的運行時異常主要有一下幾種:
ClassCastException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, IndexOutOfBoundsException, NullPointerException, SystemException, UndeclaredThrowableException, UnknownElementException, UnknownTypeException,
注:RuntimeException在代碼編寫階段是可以避免的,也是我們在編碼過程中最常見的額錯誤類型。
3.CheckedException
try(){
}catch(Exception e){
}finally{
}
try-catch捕獲的異常一般都是檢查異常。
二、異常的處理
1、throws Exception直接在方法的聲明后面直接拋出,不做任何處理;
2、throw Exception在方法內部拋出,也是拋給了上一層;
3、try-catch捕獲異常,程序出錯后還可以繼續執行,不會讓程序中斷。
新聞熱點
疑難解答