真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java中throw和throws的區(qū)別是什么

這篇文章運(yùn)用簡單易懂的例子給大家介紹Java中throw和throws的區(qū)別是什么,代碼非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

成都創(chuàng)新互聯(lián)主營費(fèi)縣網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都app開發(fā),費(fèi)縣h5小程序定制開發(fā)搭建,費(fèi)縣網(wǎng)站營銷推廣歡迎費(fèi)縣等地區(qū)企業(yè)咨詢

區(qū)別分析:

throws:用來聲明一個(gè)方法可能產(chǎn)生的所有異常,不做任何處理而是將異常往上傳,誰調(diào)用就拋給誰。

  • 用在方法聲明后面,跟的是異常類名

  • 可以跟多個(gè)異常類名,用逗號隔開

  • 表示拋出異常,由該方法的調(diào)用者來處理

  • throws表示出現(xiàn)異常的一種可能性,并不一定會發(fā)生這些異常

throw:則是用來拋出一個(gè)具體的異常類型。

  • 用在方法體內(nèi),跟的是異常對象名

  • 只能拋出一個(gè)異常對象名

  • 表示拋出異常,由方法體內(nèi)的語句處理

  • throw表示拋出了異常,執(zhí)行throw則一定拋出了某種異常

下面我們來分別介紹一下:

throws在方法后邊聲明異常,其實(shí)就是自己不想對異常做出任何的處理,告訴別人自己可能出現(xiàn)的異常,交給別人處理。

代碼示例:

package com.xinkaipu.Exception;
class Math{
    public int div(int i,int j) throws Exception{
        int t=i/j;
        return t;
    }
}
public class ThrowsDemo {
    public static void main(String args[]) throws Exception{
        Math m=new Math();
   }
}

(視頻教程推薦:java視頻教程)

throw:就是自己處理一個(gè)異常,要么是自己捕獲異常try...catch代碼塊,要么是拋出一個(gè)異常(throws 異常)。

代碼實(shí)現(xiàn):

package com.xinkaipu.Exception;
 
public class TestThrow
{
    public static void main(String[] args) 
    {
        try
        {
            //調(diào)用帶throws聲明的方法,必須顯式捕獲該異常
            //否則,必須在main方法中再次聲明拋出
            throwChecked(-3);            
        }
        catch (Exception e)
        {
            System.out.println(e.getMessage());
        }
        //調(diào)用拋出Runtime異常的方法既可以顯式捕獲該異常,
        //也可不理會該異常
        throwRuntime(3);
    }
    public static void throwChecked(int a)throws Exception
    {
        if (a > 0)
        {
            //自行拋出Exception異常
            //該代碼必須處于try塊里,或處于帶throws聲明的方法中
            throw new Exception("a的值大于0,不符合要求");
        }
    }
    public static void throwRuntime(int a)
    {
        if (a > 0)
        {
            //自行拋出RuntimeException異常,既可以顯式捕獲該異常
            //也可完全不理會該異常,把該異常交給該方法調(diào)用者處理
            throw new RuntimeException("a的值大于0,不符合要求");
        }
    }
}

關(guān)于Java中throw和throws的區(qū)別是什么就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。


分享文章:Java中throw和throws的區(qū)別是什么
標(biāo)題網(wǎng)址:http://weahome.cn/article/pgijjs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部