栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

对象是否封装了数据,以至于同一类的其他实例也无法访问该数据?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

对象是否封装了数据,以至于同一类的其他实例也无法访问该数据?

我不倾向于从一个 对象 可以访问另一个 对象的 角度来考虑它,而是从什么 代码 可以访问对象中的哪些数据来考虑。

在Java(和C#,btw)中,类中的代码可以访问同一类的任何对象的私有成员。然后,您将获得包装/装配体访问权限和公共访问权限。

棘手的是受保护的访问,这是 对子类中的 代码 访问-
但它取决于目标对象:仅当对象的实例类型与对象的位置相同时,才允许您访问该对象的受保护成员。代码或某些子类-即使它是由父类 公开 的。例如,假设您有:

class Parent{    protected int x;}class Child1 extends Parentclass Child2 extends Parentclass Grandchild extends Child1

然后,在

Child1
代码中,您只能访问
Parent.x
(在编译时)已知为
Child1
或实例的对象
Grandchild
。例如,您不能使用
newParent().x
new Child2().x



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/495806.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号