【Java】异常处理体系概述
最近寫的代碼有很多涉及自定義異常類,慢慢對Exception和RuntimeException有了一點體會,做一下簡單的總結歸納。
Java中,所有非正常情況被分為兩種:Error和Exception。
Error錯誤,一般是與JVM相關的問題,比如虛擬機崩離、虛擬機錯誤、動態鏈接失敗等等,這種錯誤無法恢復或不可能捕獲,將導致應用程序中斷。通常應用程序不應該使用catch塊捕獲Error對象。定義方法時也無須在其throws子句中聲明該方法可能拋出Error及其任何子類。
Exception中有checked和unchecked(runtime)之分,checked是指普通的Exception,而unchecked是指RuntimeException。當用throw語句拋出異常時,若異常為unchecked,那么就無須使用throws子句或者try…catch語句捕獲異常;反之則必須做一定的處理或者直接聲明拋出。當然,既然RuntimeException繼承自Exception,那么自然也是可以try…catch捕獲處理的。
這里對異常體系的介紹比較簡略,且暫時不深入介紹,下面做一下總結:
自行拋出的RuntimeException比起自行拋出的Checked異常靈活性更好,同樣地,拋出Checked異常則可以讓編譯器提醒程序員必須處理該異常。
故而,最近寫的數據結構demo的自定義異常類基本是繼承了RuntimeException,顯得比較簡便。
總結
以上是生活随笔為你收集整理的【Java】异常处理体系概述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 去空白符的大文本字符统计(洛谷P5015
- 下一篇: 密码学的数学模型及其理论基础 【二】