这道题最好把对象和变量分开说明,否则容易产生误解。以下都是64位环境下。
针对对象:
压缩状态:MarkWord 8+klass 4+数据0+对齐4=16
面试题:Object obj = new Object()这句话在内存里占用了多少字节_数据
非压缩状态:MarkWord 8+klass 8+数据0+对齐0=16
面试题:Object obj = new Object()这句话在内存里占用了多少字节_面试题_02

针对变量:
压缩状态:4
非压缩状态:8