在Java中,变量可以分为类变量和成员变量两种。
类变量,也叫静态变量,用static关键字修饰,它属于整个类的,而不是某个实例的。在内存中只会有一份副本,在类被加载的时候就会被创建出来。类变量可以通过类名来访问,也可以通过实例化对象来访问,但推荐使用类名来访问。以下是一个类变量的示例:
public class MyClass { public static int count = 0; public MyClass() { count++; } public static void main(String[] args) { System.out.println(MyClass.count); //输出0 MyClass obj1 = new MyClass(); MyClass obj2 = new MyClass(); System.out.println(MyClass.count); //输出2 } }
成员变量,也叫实例变量,不使用static关键字修饰,每个实例对象都会有一份副本,在实例化对象时被创建。成员变量只能通过实例化对象来访问。以下是一个成员变量的示例:
public class MyClass { public int age; public String name; public static void main(String[] args) { MyClass obj1 = new MyClass(); obj1.age = 18; obj1.name = "Tom"; MyClass obj2 = new MyClass(); obj2.age = 20; obj2.name = "Jerry"; System.out.println(obj1.age); //输出18 System.out.println(obj1.name); //输出Tom System.out.println(obj2.age); //输出20 System.out.println(obj2.name); //输出Jerry } }
总之,类变量和成员变量的作用不同,使用时需要根据具体情况选择。