我有两个类 A 和 B。“A”由方法 map() 组成,该方法在类 B 中被重写。在主类中,我正在为类“B”创建一个对象。我想调用'A'类的map()。有什么办法可以实现这一点吗?
我尝试过使用 super 关键字,但没有成功。
class Parent {
void Print() {
System.out.println("parent class");
}
}
class subclass1 extends Parent {
@Override
void Print()
{
System.out.println("subclass1");
}
}
public class Example1 {
public static void main(String[] args)
{
Parent a;
a = new subclass1();
a.Print();
super(a).Print();
}
}
最佳答案
不,这在 Java 中是不可能的。如果你想调用Parent
的重写方法,你必须实例化Parent
。除非您能够修改 Subclass1
,否则您可以引入一个调用父方法的新方法。
public class Subclass1 extends Parent {
public void printParent() {
super.print();
}
}
关于java - 在 main() 方法中通过子对象调用重写的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57728988/