gpt4 book ai didi

java - 使用 throws 子句运行时行为覆盖方法

转载 作者:太空宇宙 更新时间:2023-11-04 07:09:24 25 4
gpt4 key购买 nike

要解释我的问题,请检查下面的 java 代码。

public interface Parent {
public void method();
}

public class Child implements Parent {
public void method() throws Exception {
}
}

正如你们大家会说的,这不会编译,因为子类的方法声明了接口(interface)中未指定的异常。运行时行为怎么样?我遇到过这种组合在运行时不会抛出异常并且方法工作正常的情况。这是正确的行为吗(我的意思是这个带有异常子句控制的方法签名是在编译时完成的,并且在运行时抛出子句不被视为方法签名)或者我在这里遗漏了一些东西?

我发现我的问题不清楚。

让我再试一次;

上面的类组合在运行时工作,当然要编译子类,使用父类的正确版本。

最佳答案

如果编译失败,永远不会有运行时。您可以尝试抛出 RuntimeException 而不是 Exception(其中也包括捕获的异常。)

关于java - 使用 throws 子句运行时行为覆盖方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20878877/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com