常見的幾種異常類型-熟記


今天把幾個常見的異常總結一下,希望自己能熟記,別忘記!!!

 

1.NullPointerException: 空指針異常。經驗發現這個異常是經常會發生的,屬於運行時異常。

舉例:

public static void main(String[] args) {
String str = null;
//此處報空指針異常
System.out.println(str.length());
}

控制台輸出的異常信息為:

Exception in thread "main" java.lang.NullPointerException
at cn.com.gjw.MyClass.main(MyClass.java:7)

 

2.ClassCastException: 類型強制轉換異常。Java的一些語法知識不太熟悉的時候會發生的異常。

舉例:

public static void main(String[] args) {
// 類型強制轉換異常
Object x = new String("String");
System.out.println((Integer) x);
}

控制台輸出的異常信息為:

Exception in thread "main" java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
at cn.com.gjw.MyClass.main(MyClass.java:7)

 

3.ArrayIndexOutOfBoundsException: 數組下標越界異常。特別常見的一個異常,粗心的程序員都會犯的錯誤。

舉例:

public static void main(String[] args) {
int arr[] = {1,2};
// 此處報數組下標越界異常
System.out.println(arr[2]);
}

控制台輸出的異常信息為:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at cn.com.gjw.MyClass.main(MyClass.java:7)

 

4.ArithmeticException:算術運算異常。算術跟我水平差不多的你有沒有犯過類似的錯誤呢??

舉例:

public static void main(String[] args) {
// 整數0做了分母,報算術運算異常
System.out.println(1 / 0);
}

控制台輸出的異常信息為:

Exception in thread "main" java.lang.ArithmeticException: / by zero
at cn.com.gjw.MyClass.main(MyClass.java:6)

 

5.NumberFormatException: 數字格式異常。什么是數字格式異常呢?一個例子說明一切。

舉例:

public static void main(String[] args) {
// 將字符串“it”轉換為Integer類型的,當然會報數字格式異常啦
System.out.println(Integer.parseInt("it"));
}

控制台輸出的異常信息為:

Exception in thread "main" java.lang.NumberFormatException: For input string: "it"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:492)
at java.lang.Integer.parseInt(Integer.java:527)
at cn.com.gjw.MyClass.main(MyClass.java:6)

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM