如果我宣布上课
Class MyOwnException extends Exception
{
}
这是检查或未检查的例外吗?
答案 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的储备。