前置知识点:
类由属性和方法组成,属性可以称为成员变量,方法可以称为成员函数。
方法有成员函数,成员构造函数,构造函数。
父类静态成员变量初始化=父类静态代码块>
子类静态成员变量初始化=子类静态代码块>
父类成员变量初始化=父类构造代码块(成员构造函数)>父类构造函数>
子类成员变量初始化=子类构造代码块(成员构造函数)>子类构造函数>
静态域初始化
成员变量与代码块的优先级平级,谁在前就先初始化谁,与代码顺序有关,静态的东西是跟着类的加载而加载的
非静态域初始化
构造代码块 也叫 成员构造函数
实例变量的初始化语句经过编译器处理后,都会合并到构造器中去,
其中定义变量语句转换得到的赋值语句、初始化块中的语句转化得到的赋值语句,总是位于构造器的所有语句之前。合并后两种赋值语句的顺序保持他们在源码中的顺序。
其中实例变量定义时初始化和非静态代码块初始化的执行顺序与代码顺序相关。