被static修饰的成员变量,属于类变量,被所有该类的对象共享。如果某个对象改变了这个值,那么对于所有对象来说这个值都变了。
举个例子:
小区由一个个家庭组成,小区由公共区域,我们创建家庭对象,对于每个家庭来说公共区域的路灯是所有家庭共有的,如果说某个家庭把路灯损坏了,那么对所有家庭来说这个灯都是坏的。
public class Family {
private static String publicLight = "好的"; //公共区域的路灯,属于所有家庭对象共有
public static void main(String args[]) {
Family family = new Family(); //张三家
Family family2 = new Family(); //李四家
family.publicLight = "坏了"; //张三儿子比较皮,把路灯砸坏了
System.out.println(family2.publicLight);
//因为路灯是共有的,虽然李四家没有对路灯做什么,但是因为张三家儿子把路灯搞坏了,所以对他家来说路灯也是坏的。
//输出结果: 坏了
}
}