天天看点

Java静态代码块执行方法和顺序

  1. 执行代码块格式:
static{
    procudure...
}           

复制

特点: 随着类的加载而执行,且只执行一次,并优先于主函数。用于给类初始化。
  1. 执行顺序:

示例:

静态代码块随着类的加载而加载

有多个静态代码块的,按代码块前后顺序加载

一个代码块,只执行一次

class StaticCode1{
    static{
        System.out.println("x");
    }
}

public class StaticDemo1{
    static{                   //第一步,先加载主函数所在类,所以先加载并执行这段静态代码块。
        System.out.println("y");
    }
    public static void main(String[] args){
        new StaticCode1();     //第三步,加载StaticCode1类
        new StaticCode1();     //第四步,类只加载一次,静态代码块只执行一次,这里不再执行
        System.ou.println("over");  //第五步,输出打印
    }
    static{                   //第二步,多个静态代码块,按先后顺序执行
        System.out.println("z");
    }
}           

复制

输出:

y
z
x
over           

复制

参考资料