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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hufu4635 中级黑马   /  2015-5-20 23:42  /  441 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

子类继承父类的时候,子类会自动拥有父类的非私有的成员。
那么是把父类的成员隐式的添加到了子类的代码块中呢?还是说子类指向了父类的成员呢

4 个回复

倒序浏览
可以这么理解。在产生子类对象开辟堆内存的时候,这块子类的堆内存中除了产生子类的成员变量,里面还会有父类的成员变量。但是java会为这些成员变量添加一些标志。父类的成员变量他就加个“父”字,子类的成员变量他就加个“子”字。这么做是因为子父类中可能会有同名的成员变量,以此来防止调用的不确定性。那么在调用的时候,java会根据你代码的不同去调用你所指定的那个成员变量。
回复 使用道具 举报
”子类会自动拥有父类的非私有的成员“这句话是错误的 继承只能拿到父类非私有的数据 你要获取父类私有的数据有两种方法1是通过set和get方法2是通过构造方法
回复 使用道具 举报
是隐式加入!但一般的方法访问不到!要用普通方法间接调用!我记得以前有个视频看过这个的!大概是这样!
回复 使用道具 举报
只要不是私有的,子类都可以访问的到,私有的可以用set get 来获取
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马