java static 变量是 属于类的变量,而不是属于具体实例的变量。
即:在同一个类的不同实例中对同一个 static 变量做变更的话,所有该类的实例中该变量的值都会被改变。
public class TestStaticField {
public static String strTest = "default";
public void setA() {
strTest = "A";
}
public void setB() {
strTest = "B";
}
public static void main(String[] args) {
TestStaticField objTestStaticField = new TestStaticField();
System.out.println(TestStaticField.strTest);
objTestStaticField.setA();
System.out.println(TestStaticField.strTest);
objTestStaticField.setB();
System.out.println(TestStaticField.strTest);
}
}
结果
default
A
B