在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
訪問靜態變量,結果都是一樣的。