1. 概述
Java在new一个对象的时候,首先会检查对象所属的类是否已经加载进内存。
如果没有,那就会先执行类的加载。
然后再执行对象的创建。
所以new一个对象的完整过程包含两个大步骤即:类加载,对象创建
2. 步骤
1.类加载,
2.对象创建
1)在堆区分配对象所需的内存
分配的内存包括本类和父类的所有实例变量,但不包括任何静态变量
2)实例初始化
将方法区内对实例变量的定义拷贝一份到堆区,然后赋默认值。
先初始化父类再初始化子类,初始化时先执行实例代码块然后是构造方法
3)返回实例对象在堆区的地址