嘿,我正在尝试调用子类方法(ChildClass extends SuperClass())

SuperClass s=new ChildClass();
s.childClassMethod();

它没有看到 ChildClass 方法,我可以调用的唯一方法来自 SuperClass()
我知道这可能是一个愚蠢的问题,但无论如何欢呼

最佳答案

没错,你看不到它,因为 s 是没有这个方法的 SuperClass 类型——这显然会破坏 Polymorphism 原则。

所以你要么像 ((ChildClass) s).childClassMethod(); 一样改变代码,要么把 s 设为 ChildClass 类型。

关于java - 继承不能调用子类方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22750354/

10-10 13:28