设置
为了检查 JVM 中对象的内存布局,我们将广泛使用 Java 对象布局 (JOL)。...之后,我们了解对象大小:
Java 引用4个字节,布尔/字节是1个字节,char/short是2个字节,int/float是4个字节,最后,long /double是8个字节
即使我们将这些类型用作数组元素...8, 1, 1, 2, 2, 4, 4, 8, 8 [bytes]
# Array element sizes: 8, 1, 1, 2, 2, 4, 4, 8, 8 [bytes]Copy
另一方面,Java...普通对象指针 (OOP)
现在我们知道布尔值是 1 个字节,让我们考虑这个简单的类:
class BooleanWrapper {
private boolean value;
}Copy
如果我们使用...Array OOPs
让我们看看 JVM 如何在内存中布置一个布尔数组:
boolean[] value = new boolean[3];
System.out.println(ClassLayout.parseInstance