在Java中,可以通過在成員變量或成員方法前添加static關鍵字來聲明靜態成員。
靜態成員可以被類的所有對象共享,可以通過類名直接訪問,不需要創建對象。
以下是聲明和使用Java靜態成員的示例:
public class MyClass {
public static int count; // 靜態變量
public static void main(String[] args) {
MyClass.count = 10; // 直接通過類名訪問靜態變量
System.out.println(MyClass.count); // 輸出:10
MyClass obj1 = new MyClass();
MyClass obj2 = new MyClass();
obj1.count = 20; // 通過對象名訪問靜態變量
System.out.println(obj2.count); // 輸出:20
}
}
public class MyClass {
public static void myStaticMethod() { // 靜態方法
System.out.println("This is a static method.");
}
public static void main(String[] args) {
MyClass.myStaticMethod(); // 直接通過類名調用靜態方法
}
}
注意:靜態方法只能訪問靜態成員,不能訪問非靜態成員。非靜態方法可以訪問靜態成員和非靜態成員。
靜態成員在程序啟動時就被分配內存,直到程序結束才會被銷毀。因此,靜態成員適用于在多個對象之間共享數據的場景。