static{ procudure... }
特色: 随着类的加载而执行,且只执行一次,并优先于主函数。用于给类初始化。html
示例:
静态代码块随着类的加载而加载
有多个静态代码块的,按代码块先后顺序加载
一个代码块,只执行一次函数
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"); } }
输出:code
y z x over
参考资料htm