静态初始化块static{}与构造方法

发布时间 2023-07-14 11:42:52作者: Link_Soul

静态初始化块static{ }与构造方法不同。因为前者是静态的,它用于类的初始化操作中的初始化静态属性。

而构造方法则是用于对象的普通属性初始化:

public class StaticTest01 {
     StaticTest01() {
        System.out.println("正在执行构造方法");
     }
     static String b ;
    static {
        System.out.println("执行类的初始化工作");
        System.out.println("初始化静态属性:");
        b = "Link";
        output(b);

    }
    static void output(String b){
        System.out.println(b);
    }

    public static void main(String[] args) {
        StaticTest01 s = new StaticTest01();
    }
}

得到结果:

执行类的初始化工作
初始化静态属性:
Link
正在执行构造方法

如上程序可以得知:static{}也就是初始化静态属性是先于构造方法的。