已选中或取消选中自定义例外

时间:2009-07-09 09:51:26

标签: java

如果我宣布上课

Class MyOwnException extends Exception
{
}

这是检查或未检查的例外吗?

3 个答案:

答案 0 :(得分:6)

如果扩展Exception,那么它将被“检查”,即如果你抛出它,它必须在方法签名中被捕获或声明。

未经检查的异常会扩展RuntimeException,不需要声明或捕获。也可以通过扩展Error或其子类之一来创建未经检查的异常,但这些异常按照惯例保留供JDK使用。

答案 1 :(得分:1)

检查Java中的所有异常。这意味着必须在try-catch块中明确捕获。

无需捕获运行时异常(java.lang.RuntimeException)。这同样适用于错误(java.lang.Error)。

因此检查您的例外情况。如果要取消选中它,则继承RuntimeException。

答案 2 :(得分:1)

您显示的例外情况是已检查例外,必须捕获或声明为thrown

备选方案是未经检查的异常,声明如下:

Class MyOwnException extends RuntimeException
{
  ...
}

虽然没有严格遵守,但扩展RuntimeException意味着成为JDK的储备。