分为两种,一种是本类的初始化,一种是含有父类的初始化顺序。这里分开来说,
本类的初始化顺序是:静态变量、静态初始化块、变量、初始化块、构造函数
继承类的初始化顺序是:父类静态变量、父类静态初始化块、子类静态变量、子类静态初始块、父类变量、父类初始化块、父类构造函数、子类变量、子类初始化块、子类构造函数。
可以看到 与你写静态变量和静态代码块的顺序有关 ,我们规定 先写静态变量 在写静态代码块 ,所以 就成为 静态变量初始化优先于静态代码块了
By CaesarChang
~关注我 带你看更多精品技术和面试必备