Java入门

多重异常

2022-04-25  本文已影响0人  朱兰Juran

throw

使用 throw 关键字可以手动生成方法中的异常。一些可用的异常类型包括 IndexOutOfBoundsException (非法索引访问数组时抛出的异常),IllegalArgumentException(非法参数异常),ArithmeticException(出现异常的运算条件时,抛出此异常) 等等。

例如,当参数为0时,我们可以在方法中抛出 ArithmeticException。

int div(int a, int b) throws ArithmeticException {

  if(b == 0) {

    throw new ArithmeticException("Division by Zero");

  } else {

    return a / b;

  }

}

方法定义中的throws语句定义了方法可以抛出的Exception的类型。

接下来,throw关键字会引发相应的异常,并附带自定义消息。

如果我们调用第二个参数等于0的div方法,它将抛出一个ArithmeticException,并带有“Zero by Division”消息。

提示:可以使用逗号分隔列表在 throws 语句中定义多个异常。


异常处理

一个 try 代码块后面可以跟随多个 catch 代码块,这种情况就叫多重捕获,分别处理不同的异常。

多重捕获的语法如下所示:

try {

  // 程序代码

} catch (异常类型1 异常的变量名1) {

  // 程序代码

} catch (异常类型2 异常的变量名2) {

  // 程序代码

} catch (异常类型3 异常的变量名3) {

  // 程序代码

}

提示:所有 catch 块应该从最具体到最普遍的顺序排列。在特定的异常之后,您可以使用Exception类型来处理所有其他异常作为最后一个catch。

上一篇 下一篇

猜你喜欢

热点阅读