我正在将我的源代码与同事的源代码合并,我看到他添加了一个异常,要在方法的声明中抛出; 但是,我知道,该异常永远不会从该方法中抛出.
我想知道为什么编译器没有警告我"声明的非抛出异常"(或类似的东西).我意识到你可以声明一个抛出N个异常的方法,即使方法中的代码没有抛出这些异常.
这是为什么?
public void foo() throws IOException, IntrospectionException, BadStringOperationException, ... {
//do nothing
}
Run Code Online (Sandbox Code Playgroud)