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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© luxinyu 中级黑马   /  2015-5-30 22:17  /  1227 人查看  /  16 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

private修饰的父类中的成员变量。是否被子类继承。在内存中是不是被继承了。但是子类无法访问?
还有protacted是在什么时候用呢?

16 个回复

倒序浏览
private修饰的变量没有被子类继承,protect修饰的变量被子类继承了
回复 使用道具 举报
用private修饰过的成员变量  子类是不能直接访问的 需要使用别的方法
回复 使用道具 举报
没有被继承吧
回复 使用道具 举报
wuyusi 来自手机 中级黑马 2015-5-31 00:15:00
报纸
Private修饰的只在本类有效,别的类即使创建对象也无法调用,无法被继承。
在包中,只有存在子父类关系才可以访问被pretected修饰的成员
回复 使用道具 举报
private只在本类有效   protected在同一类  同一包 子类中都能用
回复 使用道具 举报
private 修饰的方法 字段等  不可以被子类继承  是为了保证数据安全   Protacted是在同一个包内的都可以访问,且自身子类也可以访问。其他类不行
回复 使用道具 举报
志行 中级黑马 2015-5-31 09:09:16
8#
第一个问题: 不会被继承
第二个问题:默认值 也就是说前面什么修饰符都不加就是protect 这个可以省略
回复 使用道具 举报
我对这个也是有的有疑问,学习了
回复 使用道具 举报
学到了  谢谢哈
回复 使用道具 举报
private:是一个访问权限修饰符也是关键字,表示私有的意思。可用于修饰成员变量和成员方法。
                被它修饰完毕后的内容,在其他类中是不能直接访问的。
回复 使用道具 举报
我认为父类中用private修饰的成员变量,经过get and set之后可以被访问和继承了
回复 使用道具 举报
可以用父类的set和get方法,或者在父类中定义一个输出方法也行
回复 使用道具 举报
第一个问题:private修饰的成员变量不会被子类继承,既然不会被继承所以不存在在内存中这个说法。
回复 使用道具 举报
许鑫 来自手机 中级黑马 2015-6-2 00:00:22
15#
不会继承啊。
回复 使用道具 举报
第二个问题:protected这个修饰符就比较有意思了,只能在同个包内调用,和继不继承没有什么关系,如果不在同一个包就算被继承也无法使用。语法很容易理解关键是学会在什么情况下使用。其实不管是private、protected、public都是面向对象封装特性的一个体现,如果你当前设计的业务接口只可以在家族之间(包)使用,防止被外人误用的话那么你可以使用protected修饰符来达到你的目的。
回复 使用道具 举报
看评论涨知识
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马