JAVA編程思想學習(十二章)經過異常處理錯誤

對異常來講,最重要的部分就是類名了,因此有默認的構造器就好了。程序員

要自定義異常類,必須從已有的異常類繼承,最好是選擇意思相近的異常類繼承(不過這樣的異常並不容易找)。通常來講繼承Exception 或者 RuntimeException編程

 

異常處理程序spa

只有匹配的catch子句才能獲得執行;這與switch語句不一樣,switch語句須要在每個case後面跟一個break,以免執行後續的case子句。繼承

 

 

方法上的throws 是爲了申明該方法將會拋出異常,打個比方:接口

若是你有源代碼那麼你能夠在源碼中查找throw語句來獲知相關信息,而後程序庫一般並不與源碼一塊兒發佈,爲了預防這樣的問題,JAVA強制你使用throws語法,使你能以禮貌的方式告知方法調用者,這個方法調用者這個方法可能會拋出異常。這就是異常說明。開發

能夠申明拋出異常,但實際程序裏並不拋出異常,這樣的好處是,爲了從此的異常佔個位子,在定義抽象類和接口是這種能力很重要。源碼

 

 

 

非檢查異常(不受檢查的異常)RuntimeExceptionit

這種異常屬於錯誤,將被自動捕獲,就不用你親自動手了,要是去檢查RuntimeException的話,代碼就顯得太混亂了。雖然能夠不用捕獲,可是仍是能夠在代碼中拋出RuntimeException類型的異常。io

究其緣由RuntimeException表明的是編程錯誤語法

 

 

Finally總能被執行

開發異常處理系統的緣由是,若是爲每一個方法的全部可能發生的錯誤都進行處理的話,任務就顯得過於繁重了,程序員也不肯意。結果經常是將錯誤忽略,應該注意到,開發異常異常處理的初衷是爲了方便程序員處理錯誤。

異常處理的重要原則是「只有你知道如何處理的狀況下才捕獲異常」。實際上,異常處理的另外一個重要目標是把錯誤處理的代碼同錯誤發生的地點相分離,這使你能在一段代碼中專一要完成的事情。至於如何處理則放到另外一端代碼中。易於理解和維護。

 

 

就能夠將本身的檢查異常 轉爲非檢查異常(RuntimeException)

相關文章
相關標籤/搜索