我有一个班级和年龄领域。但是当我改变一个对象的年龄时,对于所有其他对象也会改变它。
private static int age;
有人可以帮助解决这个问题吗?
答案 0 :(得分:4)
静态变量是类变量所以,请从变量声明中删除static
:
private int age;
根据java docs:
在声明中包含static修饰符的字段称为静态字段或类变量。它们与类相关联,而不是与任何对象相关联。该类的每个实例共享一个类变量,该变量位于内存中的一个固定位置。
答案 1 :(得分:3)
使用:
private int age;
静态变量在所有实例之间共享。
答案 2 :(得分:0)
静态成员属于全班,所以如果你改变它,所有实例都会受到影响。
使用
private int age; // without static.