【java】对象初始化的一些理解

一个对象创建语句

Girl y = new Girl("hera",20);

执行这句话要经历8个步骤:

  1. new用到了Girl.class,所以先会找到Girl.class文件并加载到内存中

  2. 如果有的话,先会执行该类中的static代码块,为Girl.class类进行初始化

  3. 在堆内存中开辟空间,分配一个内存地址

  4. 在堆内存中建立对象的特有属性,并进行默认初始化。共享的属性则在方法区中

  5. 对属性进行显示初始化

  6. 执行构造代码块,为对象进行构造代码块初始化

  7. 执行相应的构造函数,为对象进行构造函数初始化

  8. 将内存地址赋给栈内存中的y变量

你可能感兴趣的:(java,对象初始化)