我们是否需要声明方法可以抛出的未经检查的异常?

时间:2017-11-21 20:28:33

标签: java exception

在Nutshell的Java中,它表示我们必须通过throws声明方法可以抛出的已检查异常。

我想知道我们是否必须通过throws或其他方式声明方法可以抛出的任何未经检查的异常?

答案取决于未经检查的异常是预定义的还是自定义的?

感谢。

4 个答案:

答案 0 :(得分:2)

可以声明未经检查的例外,但您不必。如果内置未经检查的异常或您自己编写的异常,则无关紧要。

答案 1 :(得分:1)

不,您不需要在throws中声明未经检查的例外。

对于使用您的函数的未来开发人员(包括您未来的自我),可能会有助于声明可能在javadoc段中抛出哪些未经检查的异常,例如:

/**
 * @throws {@link MyUncheckedException} whenever blah blah case occurs
 */

答案 2 :(得分:1)

您可以但不需要声明未经检查的异常,无论您是否自己声明它们。

取消选中从RuntimeException继承的异常。

答案 3 :(得分:0)

未经检查的例外是运行时例外。所以这意味着即使你不使用throw,它也会编译运行。 像ArithmeticException是一个未经检查的异常,但即使你不使用throw,程序也会编译并运行,直到有人使用抛出该异常的值。

所以在一行中,没有使用 COMPULSORY 来抛出未经检查的异常。