java筆記 java中異常的總結

----------- android培訓java培訓、java學習型技術博客、期待與您交流! ------------

異常:通過面向對象的方式將對問題的描述信息進行封裝,封裝成對異常類。

異常體系:

               Throwable

                         |--Error         (錯誤)

                         |--Exception   (異常)

                              |--RuntimeException(運行時異常)

體系特點:所有Throwable的子類都具有可拋性

拋出關鍵字:

throw和throws

throw在函數體中跑出異常

throws在函數上拋出異常類,可以多拋,中間用逗號隔開(即在函數上聲明)

除了RuntimeException及其子類異常可以在函數內拋出,不進行try處理的情況下也可以不在函數上聲明

其他的在函數內拋出不進行try處理的話,就必須在函數上聲明,否則就會編譯報錯

如果一個函數聲明瞭異常,函數的調用者需要進行處理,可以throws或try(這是處理異常的方式)

異常分兩種:

    編譯時被檢測異常(不按照異常規則辦事)

        該異常編譯時未處理的話,編譯時就會失敗

        如果該異常被標示,代表可以被處理

    運行時異常(編譯時不檢測)

        如果發生該異常,建議不處理,讓程序停止執行,需要修正代碼

常見異常處理格式:

1.

try

{    }

catch

{    }

注:此處可以有多個catch,父類的catch放到最下面  若捕獲到的異常處理不了可以繼續拋出,即catch的大括號中還可throw 異常對象

2.

try

{    }

catch

{    }

finaly

{    }

3.

try

{    }

finaly

{    }

除非finally之前有System.exit(0);  finally之後的大括號內的內容總是被執行

 

自定義異常:就是繼承Exception或RuntimeException,成爲其子類即可,具體繼承那個要看異常的類型,調用者不能處理的繼承RuntimeException。

 

重寫(覆蓋)中的異常:

記住一點即可,子類中不能出現“新型”的異常,這樣父類的引用指向子類的對象時會出現問題,

所以子類方法中拋出的異常必須是父類異常的子類或其本身,

若父類中拋出多個異常,子類拋出的異常只能是父類的 子集!

 

 

 

 

 

發佈了32 篇原創文章 · 獲贊 4 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章