<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Java基礎(chǔ)入門(mén)之異常的那些事兒

          共 2953字,需瀏覽 6分鐘

           ·

          2021-02-24 17:39

          點(diǎn)擊上方“Java進(jìn)階學(xué)習(xí)交流”,進(jìn)行關(guān)注

          后臺(tái)回復(fù)“Java”即可獲贈(zèng)Java學(xué)習(xí)資料

          莫買(mǎi)沃洲山,時(shí)人已知處。

          前言

          大家好,我是Java進(jìn)階者。這篇文章我們主要介紹Java基礎(chǔ)入門(mén)之try...catch、finally、throws關(guān)鍵字和拋出異常知識(shí),一起來(lái)學(xué)習(xí)下吧!


          一、try...catch和finally

          (一)使用多重catch 語(yǔ)句

          1.有些時(shí)候,當(dāng)單個(gè)代碼段可能會(huì)引起多個(gè)異常,為了處理這種狀況,可以使用兩個(gè)或多個(gè)catch子句,每個(gè)子句捕獲一種類(lèi)型的異常。

          2.使用多重catch語(yǔ)句格式

          try                             { 可能發(fā)生異常的代碼塊; } catch(異常類(lèi)型1  異常對(duì)象名1{異常處理代碼塊1; } catch(異常類(lèi)型2  異常對(duì)象名2{異常處理代碼塊2; } catch(異常類(lèi)型n  異常對(duì)象名n){異常處理代碼塊n; }

          (二)finally關(guān)鍵字

          1.如果我們希望有些語(yǔ)句無(wú)論程序是否發(fā)生異常,都要執(zhí)行我們就可以使用try...catch后面加個(gè)finally關(guān)鍵字。

          2.finally關(guān)鍵字的使用語(yǔ)法格式

          try { 可能發(fā)生異常的代碼塊; } catch(異常類(lèi)型  異常對(duì)象名){異常處理代碼塊; } finally{不管有沒(méi)有產(chǎn)生異常都要執(zhí)行的代碼; }

          2.try...catch后面加個(gè)finally關(guān)鍵字的使用例子

          public class p35 {public static void main(String[] args) {        // TODO Auto-generated method stub        //定義一個(gè)try...catch語(yǔ)句捕獲異常        try{            int result=div(6,0);//調(diào)用div()方法            System.out.println(result);        }catch(Exception e){//捕獲并處理異常            System.out.println("捕獲異常信息為"+e.getMessage());            return;//用于結(jié)束當(dāng)前語(yǔ)句        }finally{            System.out.println("finally代碼塊...");        }        System.out.println("程序繼續(xù)向下執(zhí)行");}//此方法實(shí)現(xiàn)兩個(gè)整數(shù)相除        public static int div(int a,int b){            int result=a/b;//定義一個(gè)int類(lèi)型變量result,保存兩個(gè)數(shù)相除結(jié)果            return result;//結(jié)果返回值        }}

          運(yùn)行的結(jié)果是:

          從上面代碼中,try的大括號(hào)里面是可能發(fā)生異常代碼塊,catch是捕獲并處理異常,在catch代碼塊中加了一個(gè)return語(yǔ)句,主要是結(jié)束當(dāng)前語(yǔ)句。我們發(fā)現(xiàn)System.out.println("程序繼續(xù)向下執(zhí)行")這個(gè)輸出語(yǔ)句不被執(zhí)行,然而finally關(guān)鍵字代碼塊中是被執(zhí)行了,沒(méi)有被return語(yǔ)句影響到,不管這個(gè)程序是否發(fā)生異常這個(gè)finally代碼塊的語(yǔ)句都會(huì)被執(zhí)行。


          二、throws關(guān)鍵字

          1.使用throws關(guān)鍵字的子句標(biāo)記方法的聲明,表示這個(gè)方法不對(duì)產(chǎn)生的異常進(jìn)行處理,而是向調(diào)用它的方法拋出這個(gè)異常。

          2.thorws關(guān)鍵字拋出異常的語(yǔ)法格式:

          [修飾符]  返回類(lèi)型 方法名(參數(shù)1,參數(shù)2,……)throws 異常列表{……}

          3.thorws關(guān)鍵字使用例子

          public class p35 {public static void main(String[] args) throws Exception {        // TODO Auto-generated method stub            int result=div(16,2);//調(diào)用div()方法            System.out.println(result);}//此方法實(shí)現(xiàn)兩個(gè)整數(shù)相除,使用throws關(guān)鍵字聲明拋出異常        public static int div(int a,int b) throws Exception{            int result=a/b;//定義一個(gè)int類(lèi)型變量result,保存兩個(gè)數(shù)相除結(jié)果            return result;//結(jié)果返回值        }}

          運(yùn)行的結(jié)果是:

          從上面代碼中,在main()方法后面加throws關(guān)鍵字使用拋出異常,它的最終是由虛擬機(jī)來(lái)處理這個(gè)異常的。在main()方法中調(diào)用div()方法,定義實(shí)現(xiàn)方法兩個(gè)整數(shù)相除,使用throws關(guān)鍵字聲明拋出異常。除了已定義的異常,開(kāi)發(fā)人員還可以根據(jù)情況自定義異常類(lèi),定義時(shí)只要讓該類(lèi)繼承Exception。


          三、拋出異常

          1.使用throw關(guān)鍵字用在方法中聲明拋出異常的實(shí)例對(duì)象。

          2.拋出異常首先要產(chǎn)生異常對(duì)象,手動(dòng)拋出的異常對(duì)象,一定是Throwable或其子類(lèi)的實(shí)例。它的語(yǔ)法語(yǔ)句如下:

          throw 異常對(duì)象;

          3.所有的異常類(lèi)都有兩個(gè)構(gòu)造方法,以Exception類(lèi)為例,生成Exception類(lèi)的異常對(duì)象可以使用下面兩個(gè)構(gòu)造方法之一:

          public Exception( );public Exception(String s );


          四、總結(jié)

          本文主要介紹了try...catch和finally、throws關(guān)鍵字、拋出異常。

          try...catch和finally介紹了使用多重catch語(yǔ)句格式、finally關(guān)鍵字的使用語(yǔ)法格式,通過(guò)try...catch后面加個(gè)finally關(guān)鍵字例子幫助理解是如何使用的。

          使用throws關(guān)鍵字的子句標(biāo)記方法的聲明,表示這個(gè)方法不對(duì)產(chǎn)生的異常進(jìn)行處理,而是向調(diào)用它的方法拋出這個(gè)異常。拋出異常使用throw關(guān)鍵字用在方法中聲明拋出異常的實(shí)例對(duì)象。

          我是Java進(jìn)階者,希望大家通過(guò)本文的學(xué)習(xí),對(duì)你有所幫助!歡迎大家加我微信,有問(wèn)題可以隨時(shí)幫大家解決噢,交個(gè)朋友也好哇~

          -------------------?End?-------------------


          往期精彩文章推薦:

          歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持

          想加入Java學(xué)習(xí)群請(qǐng)?jiān)诤笈_(tái)回復(fù)【入群

          萬(wàn)水千山總是情,點(diǎn)個(gè)【在看】行不行

          瀏覽 104
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  88AV在线观看 | 男女撸视频 | 国产精品色婷婷五月视频 | 亚洲一区二区 | 亚洲无码专区日韩 |