(4.4)对象头
Java对象由对象头+对象体
组成。对象头大小为64比特,用于存储对象信息。对象头的分类为:
普通对象头: 64b
- 32b Mark Word:对象信息
- 32b Klass World:类名信息
数组对象头:96位
- 32b Mark Word:对象信息
- 32b Klass World:类名信息
- 32b array length
不同对象的Mark Word结构:
- 普通对象:25bits 哈希码,4bits 年龄,0/1 是否是偏向锁, 2bits 加锁状态
Integer vs int
Integer:8 + 4 =12 字节; int:4字节