黑马程序员技术交流社区

标题: 关于继承问题的提问 [打印本页]

作者: 石头stone    时间: 2016-5-20 22:13
标题: 关于继承问题的提问
继承中,将父类成员变量私有,提供set,get方法访问,子类继承父类时不能继承私有成员,也就是没有对应的成员变量(比如name),当set方法对其赋值的时候,用什么来接收呢?
作者: 右大西    时间: 2016-5-20 22:49
本帖最后由 右大西 于 2016-5-21 22:54 编辑

父类中的成员,无论是方法还是变量,都只有不被private修饰的时候才可以被子类继承
作者: ajj1314    时间: 2016-5-20 22:58
子类不能继承父类的私有成员变量,但能继承父类中的非私有方法,包括set  get 方法,所以子类可以通过其为成员变量赋值
作者: 我love    时间: 2016-5-20 23:34
子类虽然不能继承父类的私有成员,但是子类继承了父类的setXxx()/getXxx()方法,通过继承的setXxx()方法赋值,赋的值可以传递给成员变量并对成员变量赋值,然后再通过调用getXxx()方法将值返回来并接收
作者: 石头stone    时间: 2016-5-22 17:36
我love 发表于 2016-5-20 23:34
子类虽然不能继承父类的私有成员,但是子类继承了父类的setXxx()/getXxx()方法,通过继承的setXxx()方法赋 ...

谢谢,我有点钻牛角尖了
作者: Itheima_yuan    时间: 2016-5-22 17:45
每个类对成员变量一般都是私有的,这就是封装的具体体现,但要注意,不是private就是封装,以后学到包的时候你就知道了。封装就是私有属性和具体的实现,对外提供公共的访问方式,好好理解一下吧
作者: My_Android    时间: 2016-5-22 21:22
因为你继承了父类啊,父类的私用属性你不能直接修改,但是父类给你提供公开的get,set方法啊。你只需要通过方法就可以访问了这个属性
作者: 目前是菜鸟    时间: 2016-5-22 21:54
有参构造方法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2