官方代码地址:github.com/openjdk/jol
JOL能干什么
JOL (Java Object Layout)是一个小型工具箱,用于分析jvm中的对象布局。这些工具大量使用不安全、JVMTI和Serviceability Agent (SA)来解码实际的对象布局、占用空间和引用。这使得JOL比依赖堆转储、规范假设等的其他工具要准确得多。
Maven依赖
<dependency>
<groupId>org.openjdk.jol</groupId>
<artifactId>jol-core</artifactId>
<version>0.10</version>
</dependency>
IDEA 插件支持
JOL (Java Object Layout)是分析jvm中对象布局方案的工具。例如,在64x处理器上的HotSpot VM中,一个空字符串占用40字节,即字符串对象本身占用24字节,内部空字符数组占用16字节。
该插件是一个用于JOL的GUI,允许您估计对象占用了多少内存。
将光标设置为类名,然后按“代码/显示对象布局”,你将看到一个带有布局信息的右侧面板。
添加插件方式:Settings/Preferences
> Plugins
> Marketplace
> Search for "JOL"
> Install Plugin
应用实战
zhuanlan.zhihu.com/p/368323278
zhuanlan.zhihu.com/p/368505776
zhuanlan.zhihu.com/p/368810595