在Java中,静态变量可以使用static
关键字来定义。它们属于类级别的变量,而不是对象级别的变量。
静态变量的定义格式如下:
修饰符 static 数据类型 变量名;
其中,修饰符可以是可选的,可以是public
、private
或protected
等访问修饰符。数据类型可以是任何有效的Java数据类型,例如int
、double
、String
等。
静态变量在类加载的时候就被初始化,且只会被初始化一次。它们属于类本身,被类的所有对象所共享。可以通过类名来访问静态变量,也可以通过对象名来访问。
以下是一个静态变量的示例:
public class MyClass {
public static int count = 0; // 静态变量
public static void main(String[] args) {
MyClass obj1 = new MyClass();
MyClass obj2 = new MyClass();
obj1.count++; // 通过对象名访问静态变量
obj2.count++;
System.out.println("obj1 count: " + obj1.count); // 输出:2
System.out.println("obj2 count: " + obj2.count); // 输出:2
System.out.println("MyClass count: " + MyClass.count); // 输出:2
}
}
在上面的示例中,静态变量count
被所有MyClass
类的对象所共享。无论通过obj1
还是obj2
访问静态变量,结果都是一样的。