gpt4 book ai didi

java - 您能否重写抽象父类(super class)中的方法,并将其在子类中定义为 Java 中的抽象方法?

转载 作者:行者123 更新时间:2023-12-02 10:42:27 29 4
gpt4 key购买 nike

这听起来可能是一个愚蠢的问题,但我真的挣扎了很长时间才自己找到答案。那么这可能吗?

例如:

public class SuperClass {
public void methodToOverride(){
System.out.println("Some text");
}
}

public class SubClass extends SuperClass{
abstract void methodToOverride();
}

最佳答案

要使其正常工作,您只需要进行一些调整。首先,子类必须是抽象的,这样它才能有抽象方法。

其次,methodToOverride 方法的可见性不能低于其父方法,因此您必须将其设置为公共(public)。

然后它应该按预期编译并运行。这是一个例子:

public class SuperClass {
public void methodToOverride(){
System.out.println("Some text");
}
}

public abstract class SubClass extends SuperClass{
public abstract void methodToOverride();
}

public class OtherClass extends SubClass {
@Override
public void methodToOverride() {
// new logic
}
}

话虽如此,这确实是一个奇怪的模型......

希望对你有帮助!

关于java - 您能否重写抽象父类(super class)中的方法,并将其在子类中定义为 Java 中的抽象方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52841178/

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