在這裏我們例舉十種常見的運行時異常
目錄
NullPointerException - 空指針引用異常
ClassCastException - 類型強制轉換異常。
IllegalArgumentException - 傳遞非法參數異常。
ArrayStoreException - 向數組中存放與聲明類型不兼容對象異常
IndexOutOfBoundsException - 下標越界異常
NegativeArraySizeException - 創建一個大小爲負數的數組錯誤異常
NumberFormatException - 數字格式異常
UnsupportedOperationException - 不支持的操作異常
1.NullPointerException - 空指針引用異常
- 調用
null
對象的實例方法。 - 訪問或修改
null
對象的字段。 - 將
null
作爲一個數組,獲得其長度。 - 將
null
作爲一個數組,訪問或修改其時間片。 - 將
null
作爲Throwable
值拋出。
public class Demo { public static void main(String[] args){ String str=null; System.out.println(str.length()); //調用null對象的實例化方法 //獲得其長度 System.out.println(getString(str)); } public static int getString(String str){ if (str==null) throw new NullPointerException("參數不能爲空"); return 0; } }
2.ClassCastException - 類型強制轉換異常。
當試圖將對象強制轉換爲不是實例的子類時,這裏我們需要知道類強制轉換的要求:
只能在繼承層次內進行類型轉換。
在將超類轉換成子類之前,應該使用 instanceof進行檢查