您好,我很想知道Java是否有任何目的使私有类变量公开。
public class XYZ {
public String ID;
public ABC abc;
private class ABC {
public boolean isExist;
}
}
提前致谢。
是的,有目的。如果这样做,那么那些可以访问该类的程序元素可以直接操作该变量。否则(例如,如果变量是私有的),那些元素仍将能够访问该类,但将无法操纵该变量(除非您为其提供了一个getter
/ setter方法)。
这样考虑:类修饰符定义对类的访问级别,然后变量修饰符定义对变量本身的访问级别(对于那些可以访问类的元素)。
问题内容: 这是在Playground中完成的,只是为了简化。 没有编译器警告。实际上,自动完成显示没有问题。我的理解是,在类{}的边界之外,我不应该看到私有的东西,也不可以。 我想念什么吗? 问题答案: Swift中的访问修饰符与其他语言的实现方式不同。分为三个级别: :仅在 该特定文件 内可访问 __ :仅在模块(项目)中可访问 :可从任何地方访问 除非另有标记,否则您编写的所有内容均为默认设
问题内容: 我正在研究JavaScript动态加载的树视图用户控件。我想用现实世界的数据进行测试。 是否有人知道有任何公共服务带有API,该API提供了对JSON格式的分层数据的访问? 问题答案: Twitter有一个 返回JSON 的公共API,例如- 一个请求: , 编辑: 由于Twitter限制了其API的要求而被删除… 用Github API的简单示例替换它-返回一个树,在本例中为我的存储
问题内容: 想象一下我有这堂课: 现在,我有另一个使用上述类的类: 这就是问题所在:我已经从外部访问了班级的私有领域!我该如何预防?我的意思是如何使该数组不可变?这是否意味着您可以使用每种获取方法来逐步访问私有字段?(我不需要像Guava这样的任何库。我只需要知道执行此操作的正确方法)。 问题答案: 您必须返回阵列的 副本 。
问题内容: 好吧,简而言之,我 可能 需要获取新的SWT版本而不是我们现在使用的3.3版本。该项目现在仅具有此依赖关系,并且构建良好: AFAICGoogle,公共Maven仓库中没有最新版本:http://repo1.maven.org/maven2/org/eclipse/swt/ 所以: 是否有一些最新版本的公共Maven回购? 如果不是,在哪里和本地Nexus或公司Nexus都可以安装这些
问题内容: 我来自Java世界,正在阅读Bruce Eckels的Python 3 ,和。 在阅读类时,它继续说在Python中不需要声明实例变量。你只需在构造函数中使用它们,然后它们就在那里。 因此,例如: 如果是这样,那么类的任何对象都Simple可以s在类外部更改变量的值。 例如: 在Java中,我们已经学会了有关公共/私有/保护变量的知识。这些关键字之所以有意义,是因为有时你需要一个类中的
问题内容: 如果我将Class声明为字段: Eclipse给我警告: 类是原始类型。对泛型类型Class的引用应参数化 在实践中这意味着什么?我为什么要这样做呢?如果我要求Eclipse提供“快速修复”,它将给我: 这似乎并没有增加太多价值,但不再发出警告。 编辑:为什么类通用?您能否举一个参数化的例子,即可以有效使用除以外的东西吗? 编辑:哇!我还没有意识到这一点。我也看过Java拼图游戏,这肯