Java虚拟机学习记录,HotSpot对象创建
来源:互联网 发布:王晓东视频 算法 编辑:程序博客网 时间:2024/06/05 05:11
使用new关键字创建普通对象(非Array、Class等对象?)的过程
查找类信息
根据new指令的参数去确认对应的类信息是否已经被加载、解析、初始化过,如果上述过程完成,则进行下一步;如果没有,则需要首先对类进行加载、解析、初始化。分配内存
当类被加载完成后,类对应对象的内存大小就可以确定了,普通对象的内存可以分为三部分,对象头、实例数据、填充数据。
a.对象头
对象头包括两部分,自身运行所需数据(如hashcode\gc年龄等)、指向类元数据的指针
b.实例数据
实例数据是对象的真实有用的数据即对象的字段数据,其字段布局顺序由HotSpot的默认策略(long/double,int,char/short,boolean/byte,reference point)和字段的定义顺序决定;
子类会继承父类的字段,并且创建子类对象时也会为继承来的字段分配内存,遵循上述的字段布局策略的前提下,同长度的情况父类的字段在子类字段之前
c.填充数据
填充数据仅为了字节对齐赋零值
对象内存分配完成后,会除对象头外的内存片段初始化为对应的零值。
阅读全文
0 0
- Java虚拟机学习记录,HotSpot对象创建
- java虚拟机-HotSpot虚拟机对象
- HotSpot虚拟机对象的创建
- HotSpot虚拟机对象的创建
- Java虚拟机(HotSpot)-对象:创建、内存布局、访问定位
- Java虚拟机(HotSpot)对象
- HotSpot虚拟机中对象的创建
- 2.《深入理解Java虚拟机》Hotspot虚拟机中的对象创建与访问定位
- Java内存区域与HotSpot虚拟机对象
- 深入理解java虚拟机(二)HotSpot Java对象创建,内存布局以及访问方式
- Java对象在HotSpot虚拟机的创建、内存分布和访问
- Java对象创建、分配、布局、访问小析(HotSpot虚拟机)(一)
- Java对象创建、分配、布局、访问小析(HotSpot虚拟机)(二)
- Java对象创建、分配、布局、访问小析(HotSpot虚拟机)(三)
- HotSpot 虚拟机在 Java 堆中对象是如何创建、如何布局以及如何访问的?
- HotSpot虚拟机对象揭秘之对象的创建过程探究
- HotSpot虚拟机对象探秘
- HotSpot虚拟机对象探秘
- Faster RCNN理解
- Permutations II
- mongodb2.6数据导出导入
- ArrayList删除指定索引数据
- 风口上的风险 共享单车产品安全问题解决方案
- Java虚拟机学习记录,HotSpot对象创建
- 重建二叉树
- java字符追加问题
- C++ SDL学习之路 3rd —— 没法关闭SDL窗口?用事件列表!
- MySQL日志文件
- 文章标题
- 详解Gson使用(一)简单对象转化
- UCOSII软件定时器
- java字符串包含问题