throw和throws的总结

    xiaoxiao2021-03-25  93

    西城旧梦梦旧人 2017-02-23 23:03

    在java的异常处理模块中,throw和throws都可以抛出异常,那么两者有什么区别呢?

    先来说下throw抛出异常的方法:

    自抛自接

    这里要讲到是throw抛出异常的第一种方式,直接自抛自接,用try,catch接异常。

    向上抛出

    第二种方法就是直接在方法声明后面throws抛出异常。

    从这两种方法抛出异常我们可以看到:

    throw只能在方法体中使用,用来抛出异常对象。

    一个方法中若使用了throw抛出异常,如异常时运行期异常(往往是由程序错误引起的),可以不加任何处理,如果是检测异常,那么有两种选择,使用try,catch捕获异常或者使用throws声明抛出异常,一般多选择throws声明抛出异常的方式处理。

    下面介绍下throws:

    throws关键字在方法声明处使用:如上图所示,throws后面接的是异常的类型;

    throws可以声明多个异常,用逗号隔开;

    如这样声明:void doIt(int age) throws ArithmeticException,Exception(){}

    一个方法throws声明抛出异常后,那么调用该方法的时候必须处理声明的所有异常,可以使用try,catch逐一捕获或者继续使用throws进行声明。

    main方法

    再main里面可以继续抛出,但是原则上我们必须在main处理完异常。

    4.任何方法都是可以使用throws,抽象方法也可以,在语法上没有要求。

    5.方法覆盖的时候,如果子类覆盖了父类的方法,子类的方法不能声明抛出比父类更多的异常类型。如果声明的比父类更多的异常类型,编译器是通不过的。

    好了今天就到这里~喜欢的关注一波~谢谢收看~

    附上今天的十个单词:

    year 年

    hour 小时

    minute 分钟

    second 秒

    random 随机

    nextInt 下一个整数

    gaussian 高斯

    ArrayList 数组队列

    LinkedList 链表

    hash 哈希
    转载请注明原文地址: https://ju.6miu.com/read-39559.html

    最新回复(0)