【发布时间】:2014-10-31 21:18:36
【问题描述】:
Undergraduate ug = new Undergraduate (“Sam”, 999, 1);
Person p = (Person) ug // Type casting
p.writeOutput();
Undergraduate 是Person 的子类。 Undergraduate 的方法writeOutput 覆盖了Person 中的方法。为什么调用Undergraduate 的writeOutput,尽管变量p 引用了Person 类型的对象?
【问题讨论】:
-
多态性。运行时类型被调用。