对象属性初始化有3种
1. 声明该属性的时候初始化
2. 构造方法中初始化
3. 初始化块

类属性初始化有2种
1. 声明该属性的时候初始化
2. 静态初始化块

对象属性的初始化有三种方式的优先级

  当对一个对象实例化时,首先会加载实例变量,然后再执行初始化代码块,最后执行构造方法。

  对象的初始化顺序:(1)类加载之后,按从上到下(从父类到子类)执行被static修饰的语句;(2)当static语句执行完之后,再执行main方法;(3)如果有语句new了自身的对象,将从上到下执行构造代码块、构造器(两者可以说绑定在一起)。