java中的異常---
阿新 • • 發佈:2018-12-11
首先我們來看一張圖:
可見: 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執行時系統本身的原因。