A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王建亮 中级黑马   /  2013-11-21 21:11  /  1293 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 王建亮 于 2015-3-27 10:48 编辑

多态中,为什么成员变量和成员函数的引用规则不同,求深度解析

评分

参与人数 1技术分 +1 收起 理由
FFF + 1 现在是打基础的时候,暂时还不要求深入哦~.

查看全部评分

4 个回复

倒序浏览
父类成员方法是被子类重写了,成员变量在内存中的存在形式如图:

360截图20131121212613641.jpg (46.23 KB, 下载次数: 21)

360截图20131121212613641.jpg

评分

参与人数 1技术分 +1 收起 理由
FFF + 1 上图虽然是好方式。但有例子什么的就更好了.

查看全部评分

回复 使用道具 举报
楼上正解,方法存在覆盖的特性,而变量并没有被覆盖,可以用Eclipse下的Debug来查看,其实a变量存在两个值,一个是父类的,一个是子类的
回复 使用道具 举报
变量不会被覆盖,而方法是可以被重写的。当父类引用指向子类对象的时候,变量还是看父类,方法就要看子类的了。

评分

参与人数 1技术分 +1 收起 理由
田磊阳 + 1

查看全部评分

回复 使用道具 举报
FFF 金牌黑马 2013-11-22 00:10:38
报纸
如果问题已经解决,请及时修改主题为“提问结束”。
修改主题的方法链接
http://bbs.itheima.com/thread-89313-1-1.html
如果没有解决,可能你的问题问得不够清楚。可以重新发问的哦~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马