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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

我在学习继承的时候。看到书上都是这么写的。子类继承父类的所有属性和方法。在逛论坛讨论的时候好多大神说子类只继承了父类的非私有属性。我现在是迷糊了。想找个活雷锋出来解释一下其中的缘由。
我想知道子类是怎么继承父类的私有属性和方法的。说说你们的理解过程。如果不继承私有属性和方法,又是怎样的。
雷锋蜀黍在哪里?

5 个回复

倒序浏览
子类不继承父类的私有属性和方法
回复 使用道具 举报
子类对象实例化时,需要给所包含的父类private属性分配内存。所以实例对象继承了父类的私有属性。
不能直接调用,子类可以通过父类的get(),set()方法访问父类私有属性,可以通过反射调用调用父类的私有方法。
既然可以间接调用,所以算是继承了父类的私有属性和私有方法。
回复 使用道具 举报
这个不应该继承的  私有属性只在本类有效的。能够“访问”和“继承”是有区别的。访问只是知道不能够用,既然不能够自己使用也就没有 必要继承了。继承的东西都是自己可以使用的毕老师视频里不是说了吗“要能得到归自己使用的东西才有必要去继承的”。
本人愚见。共同讨论
回复 使用道具 举报
父类的私有成员必须提供公有访问方法,子类才能访问到,不能直接访问
回复 使用道具 举报
父类私有成员子类不能访问,父类只有在提供公有get和方set方法情况下,子类才能访问
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马