Java零基础学习实践系列(四十一):创建对象内存分析

四十一:创建对象内存分析

  上一节介绍了构造器,本节分析一下创建对象时的内存情况.


1.理论整理

背景简述:

  1. 假设我们有一个含有main()方法的类(Application),还有一个宠物模板(Pet类);
  2. 我们在Application类中通过new调用Pet类来实例化出对象Dog,我们给Dog赋予一些属性.

过程简述:

  1. 首先在方法区中会创建Application类,有main()方法,有Dog对象的常量属性(String类型,int型不算)在常量池中;
  2. 栈当中会有:main()方法、引用变量名(dog)
  3. 接着中会给dog的new过程创建一块空间,赋予Application中dog的属性值;
  4. 注意:不仅可以newdog,也可以new出cat,它们在堆中的位置空间是不一样的!

Java零基础学习实践系列(四十一):创建对象内存分析


声明:本系列是"狂神说java"教程的个人学习笔记,无意侵权~