天天看點

異常處理

一、異常基本介紹

概念:将程式中發生的不正常情況稱為“異常”,異常分為兩類:運作時異常和編譯時異常

二、異常體系圖

異常處理

三、異常處理方式

一、try...catch...finally

程式員在代碼中捕獲發生的異常,然後自行處理,處理機制:

異常處理

沒有finally的異常捕獲方式

異常處理

二、throws

将發生的異常抛出,交給調用者來處理,最頂級的處理着就是JVM,處理機制:

異常處理

1、如果一個方法在執行中可能生成異常,但不确定如何處理這種異常,則此方法應顯示的聲明抛出異常,表明該方法将不對這些異常進行處理,而由該方法的調用者負責處理

2、在方法聲明中用throws語句可以聲明抛出異常的清單,throws後面的異常類型可以是方法中産生的異常類型,也可以是他的父類

三、使用細節

  1. 對于編譯異常,程式必須處理
  2. 對于運作時異常,程式如果沒有處理,預設就是throws的處理方式
  3. 子類重寫父類方法的時候,對抛出異常的規定:子類重寫的方法,所抛出的異常類型要麼和父類抛出的一緻,要麼為父類抛出的異常類型的子類型
  4. 在throws過程中,如果有方法try...catch,就相當于處理異常,不必使用throws

四、自定義異常

當程式中出現了某些錯誤,但該錯誤資訊并沒有在throwable子類中處理,這個時候可以自己設計異常類,用于描述該錯誤資訊

一、自定義異常步驟

  1. 定義類,自定義異常類名繼承Exception或者RuntimeException
  2. 如果繼承Exception,則屬于編譯異常
  3. 如果繼承RuntimeException,則屬于運作異常

二、throw和throws差別

異常處理

我亦無他,唯手熟爾

上一篇: 包裝類
下一篇: 廢了