Javaのオブジェクトのサイズ感

Javaのオブジェクトのサイズのメモ。

  • reference
    • 4byte (32bit JVM or heapが32GB未満の64bit JVM)
    • 8byte (heapが32GB以上の64bit JVM)
  • Object
    • 12byte (heapによらず)
  • Array
    • 12byte (32bit JVM or heapが32GB未満の64bit JVM)
    • 24byte(heapが32GB以上の64bit JVM)

ただし,オブジェクトのサイズは8byteの倍数になるようにパディングされるので,オブジェクトの最小サイズは16byte

参考:Javaパフォーマンス, p.202(間違いありそう)