1.初始化块是对构造器的补充,初始化块总是在构造器执行之前执行,系统可以同样使用初始化块来进行对象的初始化块操作。
执行顺序:Object类的初始化块,Object的构造函数,.......,父类,.......,该类的初始化块和构造函数。
使用:如果有一段初始化代码对于所有对象完全相同,且无需接收任何函数,则可以把这段初始化处理代码提取到初始化块中。
2.静态初始化块
需要使用static修饰,静态初始化块是与类相关的,比普通初始化块先执行。但同样要遵循静态成员不能访问非静态成员的规则。即静态初始化块不能访问非静态成员,也不能访问实例的属性和方法。