★类成员的初始化顺序, 举例 ChildClass从ParentClass继承而来
ChildClass child = new ChildClass();
1. 初始化ChildClass的静态字段(按声明顺序)
2. 初始化ChildClass的静态构造函数
3. 初始化ChildClass的实例字段
4. 调用ChildClass的构造函数,并在此中断, 调用ParentClass的构造函数, 导致ParentClass开始初始化
5. 初始化ParentClass的静态字段
6. 初始化ParentClass的静态构造函数
7. 初始化ParentClass的实例字段
8. 调用ParentClass的实例构造函数
9. ParentClass初始化完毕, 调用ChildClass的构造函数,完成创建
★如果多重继承,将按上面方式展开,静态构造函数和静态字段都只构造一次.
★如果类没有实例化以前,调用该类的静态方法(字段),会引起类的静态字段实例化, 调用静态构造函数. 以后再实例化此类的时候,不再重新实例化静态字段和静态构造函数