首页 > 解决方案 > 如果我将实例变量设置为私有,是否可以避免隐私泄露的风险?

问题描述

我正在处理 Java 作业。我的教授写道:警告:一定要设置类的属性以避免任何隐私泄露的风险。我对此感到困惑。我对隐私泄露的理解总是使用复制构造函数,但是实例变量如何泄露隐私呢?这就是我们总是将实例变量设置为私有的原因吗?

标签: javacomputer-science

解决方案


如果这是您的主要代码,那么答案是肯定的,这就是我们将除全局变量之外的任何变量设置为私有的原因。

class Demo {
  private String Var = "100";
  void Meth(String str) {
    System.out.println(str + Var);
  }
}
class Main {
  public static void main(String[] args) {
    Demo demo1 = new Demo();
    demo1.Meth("10 x 10 = ");
    System.out.println(demo1.Var);//Error. This variable is set to private so it cannot be accessed.
  }

}

变量的隐私或控制只能由变量的超类/控制块访问。


推荐阅读