溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

JAVA異常類結(jié)構(gòu)是什么

發(fā)布時(shí)間:2020-11-09 13:58:22 來(lái)源:億速云 閱讀:116 作者:小新 欄目:編程語(yǔ)言

JAVA異常類結(jié)構(gòu)是什么?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!

 1、異常類大致結(jié)構(gòu)

JAVA異常類結(jié)構(gòu)是什么

2.Throwable是所有異常類的超類.

3.當(dāng)程序可能出現(xiàn)錯(cuò)誤(異常)的時(shí)候應(yīng)該使用,使用關(guān)鍵捕獲異常進(jìn)行處理.

4.捕獲異常結(jié)構(gòu)如下:

public void test() {
    int num1 = 10;
    int num2 = 0;
    try {
      System.out.println(num1 / num2);  // try可能出現(xiàn)錯(cuò)誤的語(yǔ)句塊
    } catch (Exception e) {    // 異常類型 并實(shí)例化一個(gè)異常類型e,用來(lái)對(duì)出現(xiàn)的異常進(jìn)行說(shuō)明
       e.printStackTrace();       // 如果出現(xiàn)錯(cuò)誤執(zhí)行catch里面內(nèi)容,否則跳過(guò)catch語(yǔ)句塊
    } finally {
        System.out.println("永遠(yuǎn)都會(huì)被執(zhí)行,(system.exit)特殊情況除外,");// 無(wú)論是否出現(xiàn)異常都會(huì)執(zhí)行finally語(yǔ)句塊
    }
}

5.有的函數(shù)聲明定義的時(shí)候直接拋出了異常,name在調(diào)用的時(shí)候就需要捕獲異?;蛘呃^續(xù)拋出異常.

public static void main(String[] args) {
        try {
            test();             //調(diào)用這個(gè)方法就必須捕獲異常或者繼續(xù)拋出異?!  ?
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    
    //方法定義的時(shí)候拋出了異常
    public static void test() throws Exception {
        int num1 = 10;
        int num2 = 0;
        System.out.println(num1 / num2);             
    }

6.自定義異常類,必須繼承一個(gè)異常的父類:

public class ExceptionTest extends Exception{
    @Override        //這個(gè)是注解,表示這是重寫(xiě)的方法
    public void printStackTrace() {
        System.out.println("自己定義的異常類");
        System.out.println("嘗試一下如果程序沒(méi)有出現(xiàn)異常,強(qiáng)制拋出這個(gè)自定義異常,可不可以捕獲");
    }   
}

7.嘗試使用(捕獲)自定義的異常類

public class Main {
    public static void main(String[] args) {
        try {
            test();                    //調(diào)用這個(gè)方法嘗試捕獲自定義異常
        } catch (ExceptionTest e) {
            e.printStackTrace();    //自定義的異常類重寫(xiě)了printStackTrace這個(gè)方法
        }
    }
     //繼續(xù)往上拋出異常
    public static void test() throws ExceptionTest{
        throw new ExceptionTest(); //強(qiáng)制產(chǎn)生一個(gè)自定義的異常并往上拋
    }   
}

感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)JAVA異常類結(jié)構(gòu)是什么大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI