1. 程式人生 > >java中的異常---

java中的異常---

首先我們來看一張圖:

在這裡插入圖片描述

可見: java中異常都實現了Throwable介面

exception和error的區別:

exception是異常,比如使用者輸入錯誤,密碼錯誤之類都可以算作異常。異常可以捕獲然後處理。 error是錯誤,比如out of memory記憶體溢位錯誤,出現error程式就掛了。

Exception的子類有很多(runtimeexception,ioexception,sqlexception等)

執行時異常RuntimeException:

  • ArithmeticException - 算數運算異常, 算術運算中,被0除或模除
  • ArrayIndexOutOfBoundsException - 陣列越界異常
  • ClassCastException - 型別轉換異常
  • IllegalArgumentException - 方法的引數無效異常
  • NullPointerException - 空指標異常
  • NumberFormatException - 資料格式異常,試圖把一字串非法轉換成數值(或相反)
  • ArrayStoreException - 資料儲存異常,寫陣列操作時,物件或資料型別不相容
  • IllegalThreadStateException - 試圖非法改變執行緒狀態,比方說試圖啟動一已經執行的執行緒
  • NumberFormatException - 資料格式異常,試圖把一字串非法轉換成數值(或相反)
  • SecurityException - 如果Applet試圖執行一被WWW瀏覽器安全設定所禁止的操作
  • IncompatibleClassChangeException - 如改變了某一類定義,卻沒有重新編譯其他引用了這個類的物件。如某一成員變數的宣告被從靜態改變為非靜態,但其他引用了這個變數的類卻沒有重新編譯,或者相反。如刪除了類宣告中的某一域或方法,但沒有重新編譯那些引用了這個域或方法的類
  • OutOfMemoryException - 記憶體不足,通常發生於建立物件之時
  • NoClassDefFoundException - JAVA執行時系統找不到所引用的類
  • IncompatibleTypeException - 試圖例項化一個介面,Java執行時系統將丟擲這個異常
  • UnsatisfiedLinkException - 如果所需呼叫的方法是C函式,但Java執行時系統卻無法連線這個函式
  • InternalException - 系統內部故障所導致的異常情況,可能是因為Java執行時系統本身的原因。