对象的实例化过程Person p = new Person();
1、JVM会读取指定路径下的Person.class文件,并加载进内存,并会先加载Person的父类(若有直接父类的情况下)
??若有父类,这里到底是先加载父类还是先加载自己的.class文件呢,若不是先加载自己,又怎么会知道父类是谁呢
2、在堆内存中开辟空间,分配地址
3、并在对象的空间中,对对象中的默认属性进行默认初始化
4、调用对应的构造函数进行初始化
5、在构造函数中,第一行会先调用父类中构造函数进行初始化
6、父类初始化完毕后,再对子类的属性进行显示初始化
7、在进行子类构造函数的特定初始化
8、初始化完毕后,将地址赋给引用变量
|
|