Java檢查型異常和非檢查型異常


檢查型異常(CheckedException)
在Java中所有不是RuntimeException派生的Exception都是檢查型異常。當函數中存在拋出檢查型異常的操作時該函數的函數聲明中必須包含throws語句。調用改函數的函數也必須對該異常進行處理,如不進行處理則必須在調用函數上聲明throws語句。

檢查型異常是JAVA首創的,在編譯期對異常的處理有強制性的要求。在JDK代碼中大量的異常屬於檢查型異常,包括IOException,SQLException等等。

非檢查型異常(UncheckedException)
在Java中所有RuntimeException的派生類都是非檢查型異常,與檢查型異常對比,非檢查型異常可以不在函數聲明中添加throws語句,調用函數上也不需要強制處理。
常見的NullPointException,ClassCastException是常見的非檢查型異常。非檢查型異常可以不使用try...catch進行處理,但是如果有異常產生,則異常將由JVM進行處理對於RuntimeException的子類最好也使用異常處理機制。雖然RuntimeException的異常可以不使用try...catch進行處理,但是如果一旦發生異常,則肯定會導致程序中斷執行,所以,為了保證程序再出錯后依然可以執行,在開發代碼時最好使用try...catch的異常處理機制進行處理。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM