java中内存分析以及对象的引用.docVIP

  • 3
  • 0
  • 约4.09千字
  • 约 9页
  • 2016-11-28 发布于重庆
  • 举报
java中内存分析以及对象的引用

java中内存分析以及对象的引用 1对象的实例化内存分析 2 java内存详解 3java存储机制分类 对象的实例化内存分析 Person p = new Person(); 【内存分析】 [java中所说的地址值是java虚拟机计算出来的值,而并非真正的内存地址,这点跟C语句不一样,C语句是可以指向内存地址的] 对象的声明发生在栈空间之中,此时只是声明了一个引用类型的变量p,(注意类 类型的变量都属于 引用型变量,类似 String S ),而p变量此时尚未保存任何数值,或者说p 为空对象 即 null, 通过new 运算符和类的构造方法为声明的对象分配 成员变量。(详情参考如下),大体 1 为成员变量在堆的GC区分配空间,执行构造器语句。 2 new运算符为成员变量分配内存空间后将返回一个引用赋值给变量 p,确保这些成员变量能够通过 p引用 指向的地址可以访问。 当然对象的声明和分配成员变量可以一个步骤完成。例如 Person p = new Person (); 为对象分配成员变量的内存过程: 1 在堆的永久区 检查 类模板信息,如果没有则执行第二步加载类的模板信息,如内存中有类信息则不执行第二步。 2 若没有,则 加载类模板信息 3 在堆的GC区 开辟合适的 空间,保存类的成员变量。 4 为类对象的属性赋值此时只是赋 缺省的初始化值 5 在 栈内存 中调用其构造器,并将

文档评论(0)

1亿VIP精品文档

相关文档