一,定义
在一个类中,不属于任何方法体并且以static关键字修饰的语句块,称为静态语句块。
因为静态语句块常用来进行类变量的初始化,所以也称为静态初始化程序块。
♦静态语句块在加载该类时执行一次,如果一个类中定义了多个静态语句块,则这些语句块将按在类中出现的先后次序运行。
注意:程序初始化的优先级: 基类>派生类
static>实例块
♦(两种static变量,谁在前,先打印谁)
1.private static int i;
2.static{ i=5 };
♦ 静态语句块在类加载时运行,静态方法在手动调用时才执行。
♦实例块包括: int i=0; { }; 构造函数(最后执行)
即:先执行基类中的static,在执行派生类中的static,在执行基类中的实例块,在执行派生类中的实例块。
原文:https://www.cnblogs.com/ljl150/p/11652035.html