首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【深入理解JVM】Java对象创建过程和对象内部结构

【深入理解JVM】Java对象创建过程和对象内部结构

作者头像
程序员云帆哥
发布2022-05-12 08:40:48
发布2022-05-12 08:40:48
3810
举报
文章被收录于专栏:程序员云帆哥程序员云帆哥

一、对象的创建过程

二、对象的内部结构(内存分配)

1、对象头

  • hashcode
  • GC分代年龄
  • 线程编号
  • 锁编号
  • 时间戳
  • 引用计数 …

2、实例数据

  存储所定义的各种类型字段内容,无论是从父类继承下来,还是在子类中定义的,都需要记录起来。

3、对齐填充

  起着占位符的作用,实例数据起始地址必须是8字节的整数倍,(对像的大小必须是8字节的整数倍)。

三、对象的访问

  通过栈上的reference引用数据来访问堆上的实例数据。

1、直接指针

  reference引用存储是对象地址,直接指向对象的实例数据,同时一个存储一个指向对象类型数据的指针。

2、句柄

  reference引用存储是句柄地址,句柄地址存储两个对象和类型数据两个指针,一个指向对象实例数据,一个指向对象类型数据。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-10,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 一、对象的创建过程
  • 二、对象的内部结构(内存分配)
    • 1、对象头
    • 2、实例数据
    • 3、对齐填充
  • 三、对象的访问
    • 1、直接指针
    • 2、句柄
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档