Typical memory usage for objects in java

来源:互联网 发布:2017年云计算500强 编辑:程序博客网 时间:2024/05/22 15:24

Caveats.

这里写图片描述

1. primitive types

这里写图片描述

这里写图片描述


Object overhead. 16 bytes.

Reference. 8 bytes.

Padding. Each object uses a multiple of 8 bytes.

这里写图片描述


这里写图片描述



这里写图片描述

Shallow memory usage: Don’t count referenced objects.

Deep memory usage: If array entry or instance variable is a reference, add memory (recursively) for referenced object.


这里写图片描述


Q. What is the purpose of padding?
A. Padding makes all objects take space that is a mulitple of 8 bytes. This can waste some memory but it speeds up memory access and garbage collection.

原创粉丝点击