Java类中,有这么几个东西
静态变量,静态初始化块,变量,初始化块,构造器
它们的执行顺序,只要知道以下几个原则就好了
1. 静态 优先于 非静态
2. 变量 优先于 初始化块 优先于 构造器
3. 父类 优先于 子类
于是乎,顺序如下:
父类 静态变量
父类 静态初始化块
子类 静态变量
子类 静态初始化块
父类 变量
父类 初始化块
父类 构造器
子类 变量
子类 初始化块
子类 构造器
静态变量,静态初始化块,变量,初始化块,构造器
它们的执行顺序,只要知道以下几个原则就好了
1. 静态 优先于 非静态
2. 变量 优先于 初始化块 优先于 构造器
3. 父类 优先于 子类
于是乎,顺序如下:
父类 静态变量
父类 静态初始化块
子类 静态变量
子类 静态初始化块
父类 变量
父类 初始化块
父类 构造器
子类 变量
子类 初始化块
子类 构造器