【发布时间】:2012-08-05 17:17:52
【问题描述】:
java中可以用子类对象调用父类重写的方法吗?
我试过下面的例子
class First1 { void show() { String msg="You are in first class"; System.out.println(msg); } } class second extends First1 { void show() { String msg="You are in second class"; System.out.println(msg); } } } class CallingMethod extends second { void show() { String msg="You are in the third class"; System.out.println(msg); } public static void main(String[] args) { CallingMethod cm=new CallingMethod(); cm.show(); }}
现在告诉我是否可以打印“我在二等舱”。通过使用 CallingMethod 类的对象,在示例中这里是 cm,并且在任何地方都没有使用 super 关键字。
【问题讨论】:
-
你试过一个例子吗?如果是这样,请将其发布并让我们知道您在哪里遇到问题。
-
为什么不想使用 super 关键字?你让我们玩这个游戏的目的是什么?
-
是的,我做到了,我有三个类,分别称为 First、Second 和 Third,Second 扩展了 First,Third 扩展了 Second。每个类都有一个方法void show(),我制作了第三类的对象t,我想用对象t调用并打印第二类的show()方法。我该怎么做@thinksteep
-
@HovercraftFullOfEels 我的老师要求我并告诉我不要使用 super 这样做,这就是原因。
-
这几乎就像在问“如果我打断了一只小狗的腿,我还能教他玩取物吗?”。我的问题是:“为什么要打断他的腿?”
标签: java