加载
1、一般来说,类的代码在初次使用时被加载。通常指创建第一个对象时,或者访问类的static域或static方法时会发生加载。
2、当类加载器开始加载第一个类的过程中如果发现该类具有基类它将继续进行加载,直至所有的基类被加载完成
3、然后根基类的static初始化会被执行,然后是下一个导出类static域,以此类推,直至所有相关类的static域加载初始化完成。
4、至此必要的类都被加载完成,对象可以被创建。注意:基类的加载不管是否进行对象的创建都会被执行。
初始化
5、然后是根基类成员变量按顺序初始化,然后调用根基类构造方法。根基类完成后以相同顺序执行第一个导出类的初始化直至完成对象创建。
通俗来讲,类加载和初始化顺序就是,加载类完成后,先从基类到当前类加载static域,然后从基类到当前类按顺序初始化普通成员变量和普通方法块和构造方法。示例:
|
|