Java中throw和throws的区别是什么

这篇文章运用简单易懂的例子给大家介绍Java中throw和throws的区别是什么,代码非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

成都创新互联主营费县网站建设的网络公司,主营网站建设方案,成都app开发,费县h5小程序定制开发搭建,费县网站营销推广欢迎费县等地区企业咨询

区别分析:

throws:用来声明一个方法可能产生的所有异常,不做任何处理而是将异常往上传,谁调用就抛给谁。

  • 用在方法声明后面,跟的是异常类名

  • 可以跟多个异常类名,用逗号隔开

  • 表示抛出异常,由该方法的调用者来处理

  • throws表示出现异常的一种可能性,并不一定会发生这些异常

throw:则是用来抛出一个具体的异常类型。

  • 用在方法体内,跟的是异常对象名

  • 只能抛出一个异常对象名

  • 表示抛出异常,由方法体内的语句处理

  • throw表示抛出了异常,执行throw则一定抛出了某种异常

下面我们来分别介绍一下:

throws在方法后边声明异常,其实就是自己不想对异常做出任何的处理,告诉别人自己可能出现的异常,交给别人处理。

代码示例:

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:就是自己处理一个异常,要么是自己捕获异常try...catch代码块,要么是抛出一个异常(throws 异常)。

代码实现:

package com.xinkaipu.Exception;
 
public class TestThrow
{
    public static void main(String[] args) 
    {
        try
        {
            //调用带throws声明的方法,必须显式捕获该异常
            //否则,必须在main方法中再次声明抛出
            throwChecked(-3);            
        }
        catch (Exception e)
        {
            System.out.println(e.getMessage());
        }
        //调用抛出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异常,既可以显式捕获该异常
            //也可完全不理会该异常,把该异常交给该方法调用者处理
            throw new RuntimeException("a的值大于0,不符合要求");
        }
    }
}

关于Java中throw和throws的区别是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


当前文章:Java中throw和throws的区别是什么
网站路径:http://bzwzjz.com/article/pgijjs.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 网站设计 上市集团网站建设 成都网站制作 网站制作公司 企业网站制作 成都网站制作 企业手机网站建设 专业网站设计 成都网站建设公司 网站制作 手机网站制作设计 重庆网站建设 营销网站建设 网站建设公司 成都商城网站建设 成都品牌网站建设 营销型网站建设 企业网站设计 定制网站建设多少钱 手机网站建设 网站设计公司 网站制作