大致过程如下:
(1)解释器查找类路径,定位class文件,这是一个对文件系统的操作;
(2)在加载该类时,发现该类继承了一个基类,于是加载这个基类,若这个基类又继承了基类,则第二个基类被加载,依次回朔加载到根基类;
(3)若是首次加载,则首先执行根基类的静态初始化static,然后依次是它的子孙的静态初始化,直到所有的类加载完毕;
(4)在堆上分配存储空间;————如果是抽象基类怎么办?会分配空间吗?
(5)从根基类开始,先执行字段的初始化;然后执行根基类的构造函数;按照这个顺序,依次向下,执行子类的。
本文详细介绍了Java中类的加载过程,包括查找类路径、加载基类直至根基类、执行静态初始化、分配存储空间以及字段和构造函数的初始化顺序。

被折叠的 条评论
为什么被折叠?



