1. 程式人生 > 其它 >java中的異常(Exception)

java中的異常(Exception)

基本概念

  • 將程式執行中發生的不正常的情況稱為“異常”。開發中的語法錯誤和邏輯錯誤不是異常

執行過程中的異常事件可分為兩大類

  • 錯誤(Error):Java虛擬機器無法解決的嚴重問題。例如:JVM系統記憶體錯誤,資源耗盡等嚴重問題
  • Exception:其他因為程式設計錯誤或偶爾的外在因素導致的一般性
  • 可以針對不同的程式碼進行處理

Exection有(編譯異常[編譯時,編譯器查找出的異常]和執行異常[開發時,執行時])

異常體系圖

 異常體系圖總結

  • 一般分為兩大類,一種是編譯時異常,一種是執行時異常
  • 執行時異常編譯器檢查不出來。一般是指編譯時邏輯錯誤 ,是程式設計師應該避免其異常
  • 對於執行時異常可以不做處理,因為這類異常很普遍,若全處理可能會對程式的可讀性,執行效率產生影響
  • 編譯時異常,是編譯器要求必須處理的異常

常見的執行時異常

  • Null Pointer Exception 空指標異常  : 指還沒有建立物件就想使用,會丟擲空指標異常,當應用程式在需要物件的地方使用null時,會丟擲異常
  • Airthmetic Exception 數學運算異常:會出現異常的運算條件時丟擲異常。例如一個整數除零時會丟擲異常
  • ArrayIndex OutOfBounds Exception 陣列下標越界異常:陣列下標越界異常,用非法索引訪問陣列時丟擲異常。如果索引為負或大於等於陣列大小則所因為非法索引。
  • Class cast Excetion 型別轉換異常:當試圖將物件強制轉換為不是例項的子類時,會丟擲異常
  • Number Format Excetion 數字格式不正確異常:當應用程式試圖將字串轉成一種數值型別,但該字串不能轉換為適當格式,丟擲異常

編譯異常

  • 編譯異常就是指編譯階段,就必須處理的異常,否則程式碼不能通過編譯
  • 常見的編譯異常

 

 

異常處理

  • 異常處理就是在異常發生時,對異常處理的方式
  • 異常處理的方式
  • 理解

 

  • try-catch-finally 執行順序小結

 

throws 異常處理

 

throws和throw的區別