調用了未初始化的對象或不存在的對象。經常出現在創建圖片和調用數組的操作中,比如圖片未初始化或者創建圖片時路徑錯誤。數組操作中出現空指針,混淆了數組的初始化和數組元素的初始化。
數組的初始化是為數組分配所需的空間,而初始化後的數組中的元素在沒有實例化的情況下仍然是空的,所以需要對每個元素進行初始化(如果要調用的話)。
2.數據類型轉換異常:java.lang.ClassCastException
當試圖向下轉換壹個對象,但該對象既不能轉換也不能轉換為其子類的實例時,將引發此異常,如下面的代碼所示。
對象obj?=?新的?整數(0);
String str = obj
3.沒有訪問權限:Java . lang . illegalaccessexception。
當應用程序希望調用某個類,但當前方法沒有訪問該類的權限時,會發生此異常。當在程序中使用包時,請註意這個異常。
4.方法的參數錯誤:Java . lang . illegalargumentexception
比如g.setcolor (int red,int green,int blue)的方法中三個值超過255個,也會出現這個異常,所以壹旦發現這個異常,我們需要做的就是檢查方法調用中的參數傳遞是否有錯誤。
5.數組下標越界異常
檢查被調用數組或字符串的下標值是否超出數組的範圍。壹般來說,在顯示(即直接用常量作為下標)調用中不容易犯這樣的錯誤,但在隱式(即用變量表示下標)調用中往往是錯誤的。
另壹種情況是,程序中定義的數組長度是由壹些特定的方法決定的,而不是事先聲明的。此時,首先檢查數組的長度,以避免這種異常。
6.文件結尾異常:EOFException
當程序在輸入過程中遇到文件或流的結尾時,會拋出壹個異常。因此,這個異常用於檢查是否已經到達文件或流的末尾。
7.文件中未發現異常:FileNotFoundException。
當程序試圖打開壹個不存在的文件進行讀寫時,將引發此異常。異常由文件輸入流、文件輸出流和隨機訪問文件的構造函數拋出。即使被操縱的文件存在,但由於某些原因是不可訪問的,比如打開只讀文件進行寫入,這些構造函數仍然會拋出異常。
8.該字符串被轉換為數字異常:NumberFormatException
當您嘗試將字符串轉換為指定的數值類型,但該字符串不符合數值類型要求的格式時,將引發此異常。例如,允許將字符數據“123456”轉換為數值數據。
但是,如果字符數據包含非數字字符,如123#56,則在轉換為數字數據時會出現異常。系統將捕捉並處理這個異常。
9.指定的類不存在:?Java . lang . classnotfoundexception
這裏主要考慮的是類的名稱和路徑是否正確。通常,當程序試圖通過壹個字符串加載壹個類時,它可能會拋出壹個異常。比如:調用Class.forName或者調用ClassLoad的finaSystemClass或荷載等級;
10,實例化異常:Java . lang . instantiation exception
當試圖通過類的newInstance方法創建類的實例,但程序無法通過構造函數創建對象時拋出。類對象表示抽象類、接口、數組類和基本類型。此類表示的類沒有對應的構造函數。