首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >JAVA对象布局

JAVA对象布局

作者头像
路过君
发布2020-08-12 15:43:34
发布2020-08-12 15:43:34
8020
举报
  • object header 对象头
  1. MARKWORK 8BYTE (64位 8BYTE; 32位 4BYTE) 标记字(锁信息)
  2. KLASS POINTER 8BYTE (64位 8BYTE; 32位 4BYTE) 类指针
  3. ARRAY LENGTH 8BYTE (64位 8BYTE; 32位 4BYTE) 数组长度(可选)

注:启用+UseCompressedOops开启指针压缩,对象头长度为12BYTE,数组头长度为16BYTE。 另外以下指针压缩到4BYTE

  1. 每个Class的属性指针(即静态变量)
  2. 每个对象的属性指针(即对象变量)
  3. 普通对象数组的每个元素指针
  • instance data 实例数据
  • padding 将对象长度对齐到计算机位宽的整数倍,利于存取效率(64位=8个字节)
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/08/10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档