java-javaSE-異常機制
阿新 • • 發佈:2022-06-05
java中的異常結構
- java 中的所有異常都來自於頂級父類 Throwable,Throwable 有兩個子類 Exception 和 Error
- Error 是 Java 虛擬機器無法解決的嚴重問題,出現時會導致程式終止執行。如: StackOverflowError 和 OOM 。
- Exception 不會導致程式停止,它又分為RunTimeException(執行時異常)和CheckedException(檢查時異常)
- CheckedException 是在編譯過程中發現的異常,編譯器要求 Java 程式必須捕獲或宣告所有編譯時異常。
- RunTimeException 是程式執行過程中出現的異常,只會導致當前執行緒執行失敗。
常見的異常
- 空指標異常
- 陣列索引越界異常
- 型別轉換異常
異常的抓拋機制
異常的抓取
- try-catch-finally: 對程式碼塊中出現的異常進行抓取,同時處理異常。
- thorws + 異常型別: 抓取方法體中出現的異常,但是不處理,而是向上丟擲給呼叫者。
異常的丟擲
- 程式正在執行的過程中,一旦出現異常,就會在異常程式碼處生成一個對應異常類的物件並將此物件丟擲。一旦丟擲物件以後,其後面程式碼將不再執行。
- throw 是丟擲一個手動建立的異常物件,而 throws 是加在方法上用於處理方法中出現的異常。
圖片原文地址:> https://blog.csdn.net/weixin_45661472/article/details/123616906