Java中的成員變量靜態塊(也稱為靜態初始化塊)具有以下作用:
下面是一個簡單的示例,展示了靜態塊的使用:
public class MyClass {
// 靜態變量
public static String staticVar;
// 靜態塊
static {
System.out.println("靜態塊執行");
staticVar = "Hello, World!";
}
// 構造函數
public MyClass() {
System.out.println("構造函數執行");
}
public static void main(String[] args) {
System.out.println(MyClass.staticVar);
MyClass obj1 = new MyClass();
MyClass obj2 = new MyClass();
}
}
輸出結果:
靜態塊執行
Hello, World!
構造函數執行
構造函數執行
從輸出結果可以看出,靜態塊在類加載時自動執行了一次,用于初始化靜態變量staticVar
。然后,每次創建類的對象時,構造函數都會被調用。