返回信息流最近在看CoreJava ,看到第五章继承部分突然看不懂一个问题了:子类继承了超类,内容应该是比超类更多并且包含超类才对,把子类引用赋值给超类不相当于遗漏了子类特有的部分内容吗? 为什么我觉得应该反过来才对,谁能来帮我解答下。。
这是一条镜像帖。来源:北邮人论坛 / java / #33970同步于 2014/8/22
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
为什么JAVA中子类引用赋值给一个超类是正确的?
a262620801
2014/8/22镜像同步6 回复
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
按照你说的反过来:
超类只有一个方法A,子类又多了一个方法B。
我new一个超类,只有A方法,赋值给一个子类引用subClass。
当我调用subClass.B()的时候,你期待发生什么呢?
【 在 a262620801 (orbX) 的大作中提到: 】
: 最近在看CoreJava ,看到第五章继承部分突然看不懂一个问题了:子类继承了超类,内容应该是比超类更多并且包含超类才对,把子类引用赋值给超类不相当于遗漏了子类特有的部分内容吗? 为什么我觉得应该反过来才对,谁能来帮我解答下。。
有道理,那我这个赋值了子类引用的超类对象,是不是就不能使用子类的方法了?
【 在 shenlei 的大作中提到: 】
: 按照你说的反过来:
: 超类只有一个方法A,子类又多了一个方法B。
: 我new一个超类,只有A方法,赋值给一个子类引用subClass。
: ...................
不能了,除非向下转型。
【 在 a262620801 (orbX) 的大作中提到: 】
: 有道理,那我这个赋值了子类引用的超类对象,是不是就不能使用子类的方法了?