我想在所有其他类中使用一个变量。我可以在一个类中修改该变量,并在其他类中使用该新值。
class A{
boolean val = false;
}
class B{
val = true;
}
class C{
if(val){
//do something
}
}
答案 0 :(得分:0)
在Java中,您可以在不影响封装需求的情况下实现您的目标。在具有变量的类中创建getter和setter,并使用这些getter和setter在其他类中访问该变量。
class A{
private boolean val = false; // private modifier needed for encapsulation
public void setVal(boolean val){
this.val = val
}
public boolean isVal(){
return val;
}
}
class B{
//val = true; instead of this, try this------>
new A().setValue(true); // use setter to set the value.
}
class C{
if(new A().isVal()){ //use getter here to get the value
//do something
}
}
避免在其他类中直接使用变量的原因是,您的变量总是有可能被修改为不合适。通过使用getter和setter,您可以完全控制变量,并对其进行操作,以便不会输入任何不需要的值。