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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© K.L.Zous 初级黑马   /  2014-4-9 23:06  /  791 人查看  /  6 人回复  /   2 人收藏 转载请遵从CC协议 禁止商业使用本文

A.子类能继承并拥有父类所有方法和属性,但是不能直接访问父类的私有方法和属性
B.子类不能继承父类的私有方法和属性

6 个回复

倒序浏览
继承了,但是没有权限访问
回复 使用道具 举报
当建立子类对象时,该对象包括父类说有的属性和方法,但是没有权限访问 私有的属性和方法!

毕老师 第7天 的第4个视频中有个讲子类对象在内存中的加载方式,画的有一副图,很容易理解,你可以再温习一下!
回复 使用道具 举报
子类继承父类后,不能访问父类中私有的成员。但是子类可以通过父类中提供的公有方法来访问父类中的私有的成员。对了,关于是私有的方法,等你学了反射之后可以获取到。这个也是我们以后在安卓里面经常会用到的。我们会经常使用反射调用系统api中隐藏的方法来执行操作。
回复 使用道具 举报 1 0
本帖最后由 duanyoujiji 于 2014-4-10 08:22 编辑

A subclass does not inherit the private members of its parent class. However, if the superclass has public or protected methods for accessing its private fields, these can also be used by the subclass.
官方是这么说的,一个子类是不能继承父类的私有成员,然而,如果父类有公开访问和受保护权限修饰符私有字段的方法,那么这些方法会被子类继承。 给你链接  http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html
这就是父类私有字段要设置访问方法 public xxx getXxx ();void  setXxx();不要想得那么复杂,访问权限控制修饰符明白就行。

还有一句 A subclass inherits all of the public and protected members of its parent。不是所有,只是public和protect修饰的成员才被继承。
回复 使用道具 举报 1 0
哈哈 谢谢各位的解答了
回复 使用道具 举报
茅塞顿开
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马