Java的基本理念是“結構不佳的代碼不能運行”。
1.概念用強制規定的形式來消除錯誤處理過中隨心所欲的因素.
使用異常所帶來的一個相當明顯的好處是,它往往能夠降低錯誤處理代碼的復雜度.
2.基本異常異常情形是指阻止當前方法或作用于繼續執行的問題.
標準異常都有兩個構造器:一個是默認構造器,另一個是接受字符串作為參數,以便能把相關信息放入異常對象的構造器.
3.捕獲異常監控區域:一段可能產生異常的代碼,并且后面跟著處理這些異常的代碼.
try塊:跟在關鍵字try之后的普通程序塊.
異常處理程序:拋出的異常必須在某處得到處理,這個"地點"就是異常處理程序,而且針對每個要捕獲的一場,得準備相應的處理程序.
異常處理程序緊跟在try塊之后,以關鍵字catch表示.
異常處理模型:終止模型,恢復模型(不實用).
4.創建自定義異常要自定義異常類,必須從已有的異常類繼承,最好的選擇是相近的異常類繼承.
5.異常說明異常說明使用了附加的關鍵字throws,后面接一個所有潛在異常類型的列表.
6.捕獲所有異常Exception是與編程有關的所有異常類的基類.
7.Java標準異常Throwable這個Jaba類被用來表示任何可以作為一場被拋出的類.
Throwable對象可分為兩種類型(指從Throwable繼承而得到的類型):Error(表示編譯時和系統錯誤),Exception(可以被拋出的基本類型).
特例:RuntimeException(或任何從它繼承來的異常),編譯器不需要一場說明,其輸出報告給了System.err.
8.使用finally清理無論異常是否被拋出,finally子句總能被執行.
9.異常的限制當覆蓋方法的時候,只能拋出在基類方法的異常說明里列出的一場.
10.構造器處理具有可以失敗的構造器,且需要清理的對象:對于每一個構造器,都必須包含在其自己的try-finally語句塊中,并且每一個對象構造器必須都跟隨一個try-finally語句塊以確保清理.
11.異常匹配拋出異常的時候,異常處理系統會按照代碼的書寫順序找出"最近"的處理程序.
找到匹配的處理程序之后,它就認為異常將得到處理,然后就不再繼續查找.
查找的時候并不要求拋出的異常同處理程序所聲明的異常完全匹配,派生類的對象也可以匹配其基類的處理程序.
12.其他可選方式異常處理的一個重要原則:只有在知道如何處理的情況下才捕獲異常.
異常處理的一個重要目標:把錯誤處理的代碼同錯誤發生的地點相分離.
13.異常使用指南應該在下列情況下使用異常:
1.在恰當的級別處理問題.
2.解決問題并且重新調用產生異常的方法.
3.進行少許修補,然后繞過異常發生的地方繼續執行.
4.在別的數據進行計算,以代替方法預計會返回的值.
5.把當前運行環境下能做的事情盡量做完,然后把相同的異常重拋到更高層.
6.把當前運行環境下能做的事情盡量做完,然后把不同的異常重拋到更高層.
7.終止程序.
8.進行簡化.
9.讓類庫和程序更安全.
END
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76433.html
摘要:一旦異常被拋出,就表明錯誤已無法挽回,也不能回來繼續執行。這種在編譯時被強制檢查的異常稱為被檢查的異常。通過獲取原始異常。構造器對于在構造階段可能會拋出異常,并要求清理的類,最安全的做法是使用嵌套的子句。 點擊進入我的博客 Java異常處理的目的在于通過使用少于目前數量的代碼來簡化大型、可靠的程序的生成,并且通過這種方式可以使你更自信:你的應用中沒有未處理的錯誤。 12.1 概念 異...
摘要:非檢查異常是不需要在子句中聲明的異常。在高執行級別,應記錄此類異常。是最為嚴重的運行時錯誤,幾乎是不可能恢復和處理,一些示例是,和。捕獲異常時,也不要捕獲范圍太大,例如捕獲,相反,只捕獲你能處理的異常,應該處理的異常。 摘要: 簡單實用的建議。 原文:Java異常處理12條軍規 公眾號:Spring源碼解析 Fundebug經授權轉載,版權歸原作者所有。 在Java語言中,異常從...
摘要:異常處理程序拋出的異常必須在異常處理程序中得到處理。終止與恢復異常處理有兩種模型,支持終止模型,一旦異常被拋出,表明錯誤無法挽回,無法退回來繼續執行之前出錯的代碼。對于異常來說,最重要的部分就是類名。 一、概念 使用異常能降低處理錯誤代碼的復雜程度,并且將錯誤在一個地方進行處理,于是將描述在正常行為過程中做過什么事的代碼和出了問題怎么辦的代碼相分離 二、基本異常 異常情形指的是當前環境...
摘要:案例演示該句運行時發生了數組索引越界異常,由于沒有處理異常,導致程序無法繼續執行,程序結束。用來進行某種異常的捕獲,實現對捕獲到的異常進行處理。運行時期異常一旦發生需要程序人員修改源代碼。 01異常的概述 * A: 異常的概述 * a:什么是異常 * Java代碼在運行時期發生的問題就是異常。 * b:異常類 * 在Java中,把異常信息...
閱讀 2838·2021-11-15 11:39
閱讀 1816·2021-09-24 09:48
閱讀 1060·2021-09-22 15:36
閱讀 3581·2021-09-10 11:22
閱讀 2991·2021-09-07 09:59
閱讀 952·2021-09-03 10:28
閱讀 667·2021-09-02 15:15
閱讀 2738·2021-08-27 16:24