大致分为两块:
一个是对象自己本身的一些信息;
一个是对象的实例变量作为数据占用的空间
例如,对象头 在64位Linux操作系统上,会占用16字节,然后如果你的实例对象内部有个int类型的实例变量,然后如果你的实例对象内部有个int类型的实例变量,则会占用四个字节,如果是龙类型实例变量,则会占用8个字节。如果是数组,Map之类的,那么会占用更多的内存.
JVM本身对这块也有优化,比如对齐填充机制,指针压缩机制;
大致分为两块:
一个是对象自己本身的一些信息;
一个是对象的实例变量作为数据占用的空间
例如,对象头 在64位Linux操作系统上,会占用16字节,然后如果你的实例对象内部有个int类型的实例变量,然后如果你的实例对象内部有个int类型的实例变量,则会占用四个字节,如果是龙类型实例变量,则会占用8个字节。如果是数组,Map之类的,那么会占用更多的内存.
JVM本身对这块也有优化,比如对齐填充机制,指针压缩机制;