JVM体系
》类加载机制
》编译与反编译
》JVM内存结构
》JVM内存模型
》垃圾回收
》JVM参数及调优
》JVM对象模型
对象的组成:
对象头(header)实例数据(InstanceData)对象填充(padding)
对象头的组成:
类型指针 对象自身运行的数据 数组长度(数组的时候才有)
类型指针(klass)
对象指向它的类元数据的指针,虚拟机通过这个指针来确定这个对象是哪个类的实例
自身的数据(markword)
用于存储对象自身的运行时数据 数据:图示(32位的JVM)
数组长度
如果对象是一个数组, 那在对象头中还必须有一块数据用于记录数组长度.
实例数据
对象真正存储的真正数据
对象填充
并不是一定存在的,起着占位符的作用 作用实例数据不满足8的倍数的时候,起到填充的作用