这听起来像是一个愚蠢的问题,但是我很长时间都在努力寻找自己的答案。那有可能吗?
例如:
public class SuperClass {
public void methodToOverride(){
System.out.println("Some text");
}
}
public class SubClass extends SuperClass{
abstract void methodToOverride();
}
答案 0 :(得分:1)
要使其正常工作,您只需要进行一些调整。首先,子类必须是抽象的,因此它可以具有抽象的方法。
第二,methodToOverride方法的可见性不能小于父方法的可见性,因此必须将其设置为公开。
然后它将按预期编译并运行。这是一个示例:
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
}
}
话虽如此,这肯定是一个奇怪的模型...
希望有帮助!