类的初始化大致上有这么几个方面。
a.静态变量的初始化 b.一般实例变量的初始化 c.构造函数的初始化
初始化的难点在于继承体系中。当有继承体系时,初始化始终要遵循的原则就是,无论如何必先初始化基类
0.当载入当前类时,若当前类有继承体系,则依次无条件载入基类
0’.先从最顶的基类开始顺序初始化其静态static变量,接着初始化当前类的静态static变量(也就是说,static变量的初始化是伴随着类被装载时而初始化的,它的初始化在任何构造函数执行前)
1.先从最顶端基类,构造基类对象。
(假如构造函数中有this或super调用,则先执行此调用)
1.1.首先按出现次序初始化其实例变量
1.2.再执行其构造函数体
2.依次递归上述步骤
<此外,实例变量可以不显式初始化(系统会赋默认值),但是局部变量必须显式初始化>