黑马程序员技术交流社区

标题: private能阻止继承对么? [打印本页]

作者: 王雷1    时间: 2013-11-27 13:40
标题: private能阻止继承对么?
本帖最后由 王雷1 于 2013-11-29 20:02 编辑

private能阻止继承对么?如果能阻止,那就是说private就不光是访问修饰符了,还能干别的,如果不能,为什么继承之后无法操作,别跟我说什么父类,继承过来了,就在本类中了。
作者: HAnG    时间: 2013-11-27 14:09
想阻止继承?用final修饰
作者: 王雷1    时间: 2013-11-27 14:12
HAnG 发表于 2013-11-27 14:09
想阻止继承?用final修饰


我的意思是说为什么private的属性无法再继承体当中使用?
作者: HAnG    时间: 2013-11-27 14:20
王雷1 发表于 2013-11-27 14:12
我的意思是说为什么private的属性无法再继承体当中使用?

父类的属性修饰成private,子类就继承不到了这个属性了
作者: 王雷1    时间: 2013-11-27 14:39
HAnG 发表于 2013-11-27 14:20
父类的属性修饰成private,子类就继承不到了这个属性了

也就是说private不光是访问权限修饰符,同时也能阻止继承。能干访问权限以外的事。谢谢
作者: 冷月    时间: 2013-11-27 15:51
说到底还是访问权限的问题
作者: 何超    时间: 2013-11-27 23:13
王雷1 发表于 2013-11-27 14:39
也就是说private不光是访问权限修饰符,同时也能阻止继承。能干访问权限以外的事。谢谢 ...

不是阻止继承,而是隐藏。隐藏和阻止继承本质上还是不一样  效果是相同的
私有之后父类成员对子类就无效 隐藏起来了
作者: xibozglr    时间: 2013-11-28 16:22
阻止继承要用final,继承后,父类的private成员其实存在于子类中,但是,private使该成员在子类对象中不可见,所以,无法被子类对象访问
作者: 邓伟    时间: 2013-11-28 21:50
个人感觉,private与finaly 实质的区别.
private修饰后依然能够被修改. 只是不能被外界所访问. - 应该是在底层进行隐藏修饰.
然而finaly 是阻止一切对他进行修改. 更像是加上一把锁.
作者: 冯晓骏    时间: 2013-11-28 21:56
不同的修饰符有不同的作用,private是访问权限修饰符,就是用来控制访问权限的,没有其他的作用
作者: 杨增坤    时间: 2013-11-28 22:29
  父类的构造函数可以私有化,那看你是私有化的是无参的构造函数还是有参构造函数??        首先明白,子类只会继承父类的非私有化成员,


         如果父类的无参构造函数私有化了,那么不能有子类继承此类,因为父类或者子类都会使用无参的狗仔函数,
         如果父类的有参构造函数私有化了,但是无参构造函数没有私有化,那么子类可以继承父类,但是只能通过无参构造函数实例化子类,不能通过有参构造函数实例化子类,因为父类的有参构造函数私有化了。


希望对你有帮助!

作者: 高正新    时间: 2013-11-29 18:24
继承是方法与方法之间的关系。




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