流琦 2016-10-16 15:56 采纳率: 50%
浏览 3626
已采纳

java中有关private继承的菜鸟问题

比如下列代码:

class Person
{
private String name;

Person(String name)
{
    this.name = name;
}

}

class Student extends Person
{

Student(String name)
{
super(name);
}
}

不是说子类没有办法继承private成员吗?但是子类却可以构造初始化成功,那么子类是不是存在着name这个成员呢?有的话又存放在内存的哪里?

  • 写回答

11条回答 默认 最新

  • Xth8013 2016-10-16 17:58
    关注

    子类继承父类的一切属性和方法,但是子类中不能直接访问父类的private修饰的成员,因为private修饰成员只能在定义它的类中访问,不能在另一个类中访问。可以理解为子类隐式地继承了private修饰的成员。
    当创建了一个子类对象时,在内存中开辟存储空间,这个子类对象中包含了继承过来的所有属性,是实际存在的。只是由于修饰符private的限制而不能在父类外部访问。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(10条)

报告相同问题?

悬赏问题

  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 yolov8边框坐标
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真