新聞中心
前言

創(chuàng)新互聯(lián)建站是專業(yè)的唐河網(wǎng)站建設(shè)公司,唐河接單;提供網(wǎng)站設(shè)計、成都網(wǎng)站設(shè)計,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行唐河網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
大家好,我是Java進階者。這篇文章我們主要介紹Java基礎(chǔ)入門之try...catch、finally、throws關(guān)鍵字和拋出異常知識,一起來學(xué)習(xí)下吧!
一、try...catch和finally
(一)使用多重catch 語句
1.有些時候,當(dāng)單個代碼段可能會引起多個異常,為了處理這種狀況,可以使用兩個或多個catch子句,每個子句捕獲一種類型的異常。
2.使用多重catch語句格式
- try
- {
- 可能發(fā)生異常的代碼塊;
- }
- catch(異常類型1 異常對象名1)
- {
- 異常處理代碼塊1;
- }
- catch(異常類型2 異常對象名2)
- {
- 異常處理代碼塊2;
- }
- …
- catch(異常類型n 異常對象名n)
- {
- 異常處理代碼塊n;
- }
(二)finally關(guān)鍵字
1.如果我們希望有些語句無論程序是否發(fā)生異常,都要執(zhí)行我們就可以使用try...catch后面加個finally關(guān)鍵字。
2.finally關(guān)鍵字的使用語法格式
- try
- {
- 可能發(fā)生異常的代碼塊;
- }
- catch(異常類型 異常對象名)
- {
- 異常處理代碼塊;
- }
- finally
- {
- 不管有沒有產(chǎn)生異常都要執(zhí)行的代碼;
- }
3.try...catch后面加個finally關(guān)鍵字的使用例子
- public class p35 {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- //定義一個try...catch語句捕獲異常
- 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)前語句
- }finally{
- System.out.println("finally代碼塊...");
- }
- System.out.println("程序繼續(xù)向下執(zhí)行");
- }
- //此方法實現(xiàn)兩個整數(shù)相除
- public static int div(int a,int b){
- int result=a/b;//定義一個int類型變量result,保存兩個數(shù)相除結(jié)果
- return result;//結(jié)果返回值
- }
- }
運行的結(jié)果是:
從上面代碼中,try的大括號里面是可能發(fā)生異常代碼塊,catch是捕獲并處理異常,在catch代碼塊中加了一個return語句,主要是結(jié)束當(dāng)前語句。我們發(fā)現(xiàn)System.out.println("程序繼續(xù)向下執(zhí)行")這個輸出語句不被執(zhí)行,然而finally關(guān)鍵字代碼塊中是被執(zhí)行了,沒有被return語句影響到,不管這個程序是否發(fā)生異常這個finally代碼塊的語句都會被執(zhí)行。
二、throws關(guān)鍵字
1.使用throws關(guān)鍵字的子句標(biāo)記方法的聲明,表示這個方法不對產(chǎn)生的異常進行處理,而是向調(diào)用它的方法拋出這個異常。
2.thorws關(guān)鍵字拋出異常的語法格式:
- [修飾符] 返回類型 方法名(參數(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);
- }
- //此方法實現(xiàn)兩個整數(shù)相除,使用throws關(guān)鍵字聲明拋出異常
- public static int div(int a,int b) throws Exception{
- int result=a/b;//定義一個int類型變量result,保存兩個數(shù)相除結(jié)果
- return result;//結(jié)果返回值
- }
- }
運行的結(jié)果是:
從上面代碼中,在main()方法后面加throws關(guān)鍵字使用拋出異常,它的最終是由虛擬機來處理這個異常的。在main()方法中調(diào)用div()方法,定義實現(xiàn)方法兩個整數(shù)相除,使用throws關(guān)鍵字聲明拋出異常。除了已定義的異常,開發(fā)人員還可以根據(jù)情況自定義異常類,定義時只要讓該類繼承Exception。
三、拋出異常
1.使用throw關(guān)鍵字用在方法中聲明拋出異常的實例對象。
2.拋出異常首先要產(chǎn)生異常對象,手動拋出的異常對象,一定是Throwable或其子類的實例。它的語法語句如下:
- throw 異常對象;
3.所有的異常類都有兩個構(gòu)造方法,以Exception類為例,生成Exception類的異常對象可以使用下面兩個構(gòu)造方法之一:
- public Exception( );
- public Exception(String s );
四、總結(jié)
本文主要介紹了try...catch和finally、throws關(guān)鍵字、拋出異常。
try...catch和finally介紹了使用多重catch語句格式、finally關(guān)鍵字的使用語法格式,通過try...catch后面加個finally關(guān)鍵字例子幫助理解是如何使用的。
使用throws關(guān)鍵字的子句標(biāo)記方法的聲明,表示這個方法不對產(chǎn)生的異常進行處理,而是向調(diào)用它的方法拋出這個異常。拋出異常使用throw關(guān)鍵字用在方法中聲明拋出異常的實例對象。
我是Java進階者,希望大家通過本文的學(xué)習(xí),對你有所幫助!
網(wǎng)頁題目:Java基礎(chǔ)入門之異常的那些事兒
網(wǎng)站路徑:http://fisionsoft.com.cn/article/djsgsdd.html


咨詢
建站咨詢
