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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 胡永城 高级黑马   /  2013-12-12 21:45  /  3378 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 胡永城 于 2017-2-21 21:30 编辑

【已重置】

评分

参与人数 1黑马币 +3 收起 理由
FFF + 3 分太高了。,到天花板了~~~

查看全部评分

7 个回复

倒序浏览
是访问权限的问题 私有的成员只能在本类中有效,在别的类中不能访问的。父类的对象可以拿自己的所有东西,但是子类虽然有了父类的实例,但是缺不可拿到父类的私有东西,因为父类说了,这些属性只有父类的对象可以拿到
回复 使用道具 举报
ysunday 发表于 2013-12-12 21:51
是访问权限的问题 私有的成员只能在本类中有效,在别的类中不能访问的。父类的对象可以拿自己的所有东西, ...

父类对象拿到私有属性也是通过引用拿到对象实体中的,super也是父类引用,两者什么区别?
回复 使用道具 举报
虽然我明白什么意思 但是表达不出来   我只能大概说一下我的意思    你说的这个问题属于多态  父类的引用指向子类对象       父类只是个引用   不是个对象      多态自始至终都是子类对象在做变化  ,  如果 你想访问父类的私有成员  你在父类中可以对外暴露public 的方法!!

评分

参与人数 2技术分 +1 黑马币 +1 收起 理由
FFF + 1 神马都是浮云
胡永城 + 1

查看全部评分

回复 使用道具 举报
Faner 发表于 2013-12-12 21:57
虽然我明白什么意思 但是表达不出来   我只能大概说一下我的意思    你说的这个问题属于多态  父类的引用指 ...

子类实例化对象时,的确调用了父类构造函数,创建了父类实例,不过。。。
回复 使用道具 举报
本帖最后由 ysunday 于 2013-12-12 22:29 编辑
胡永城 发表于 2013-12-12 21:56
父类对象拿到私有属性也是通过引用拿到对象实体中的,super也是父类引用,两者什么区别? ...


好像说错了 ,这是个继承的问题,父类私有属性子类是看不到的,所以你是访问不到的。画了个图  你看看吧  也不知道对不对  看不清的话没办法了  实在不会玩论坛

评分

参与人数 1黑马币 +3 收起 理由
胡永城 + 3 辛苦了

查看全部评分

回复 使用道具 举报
ysunday 发表于 2013-12-12 22:27
好像说错了 ,这是个继承的问题,父类私有属性子类是看不到的,所以你是访问不到的。画了个图  你看看吧  ...

多谢,我理解错了一个概念,父类实例化对象时,会在内存中分配实体空间,引用指向实体空间。而用super时,还没有初始化父类对象(super是在子类中应用的,此时都没有对象实体)。
回复 使用道具 举报
Faner 发表于 2013-12-12 21:57
虽然我明白什么意思 但是表达不出来   我只能大概说一下我的意思    你说的这个问题属于多态  父类的引用指 ...

多谢啦。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马