1. 程式人生 > 實用技巧 >java常用的異常處理情況

java常用的異常處理情況

在c++中我們的異常處理一般是返回一個數值,通過判斷數值來決定執行那一步,但在java中引入了異常類

可以供我們方便的處理異常下面介紹一些java異常類的基本結構:

Throwable是所有異常類的基類,它之下分為:Error與Exception.

其中Error是嚴重錯誤,一般為硬體錯誤,我們一般無法處理,

Exception是程式本身可處理的錯誤,它之下有RuntimeException(執行時的錯誤)

編譯時不做檢查出現問題回來修改程式碼,以及非執行時錯誤編譯期間幾必須處理否則無法編譯。

下面來介紹java常用的異常處理情況:

1.java.lang.NullPointerException

空指標異常,這個經常碰到十分討厭,一般就是使用了未經初始化的物件,比如使用物件陣列時:

Student[] stu=new Student[10];
        for(int i=0;i<10;i++)
        {
            stu[i].setAge(i);
        }

我們沒有給陣列的每個物件初始化所以出現了空指標異常,修改後如下:

        Student[] stu=new Student[10];
        for(int i=0;i<10;i++)
        {
            stu[i]=new Student();
            stu[i].setAge(i);
        }

我們可以在使用物件時判斷物件是否為空一次來避免空指標異常。

2.java.lang.ArrayIndexOutOfBoundsException

這個是陣列下標越界異常,也是比較常見的異常,我們在使用陣列尤其是下標是變數時十分容易導致下標越界,

為了避免下標越界,我們可以呼叫length函式,與變數比較,這樣就可以避免下標越界的問題了。

如下面就存在下標越界的問題:

        int str[]= {1,2,3,4,5,6,7,8,9};
        for(int i=0;i<=10;i++)
        {
            System.out.println(str[i]
+" "); }

字串也存在下標越界的異常:StringIndexOutOfBoundsException

        String str="123456789";
        for(int i=0;i<=10;i++)
        {
            System.out.print(str.charAt(i));
        }

3.