求助>JAVA中怎么获取类对象地址?>
4回复
2周前

JAVA中怎么获取类对象地址?


环境参数
  • 操作系统Windows
  • JDK版本JDK8
  • 内存1GB
  • CPU核数4
  • 操作系统位数64位
java_pid33188.hprof42.67MB
查看详情

JAVA中怎么获取类对象地址?像HeapDump社区的这个功能,JAVA代码能做到吗?
微信截图_20210928223950.png

662 阅读
请先登录,再评论

回复列表

https://a.perfma.net/img/2382850
四千岁2周前

我用jol这个JAR包还有网上找的用sun.misc.Unsafe这个类获取到的地址,跟HeapDump社区上面的地址总是不一样。我参考了如何获取到Java对象的地址。但是获取出来的地址跟HeapDump社区上面的地址不一样。

鸠摩2周前
回复 四千岁:

看着是的,但是还有个事儿,这些对象一般都是在堆中,所以堆中对象地址在GC后一般都会变化的,所以你要保证没有GC发生过

回复
四千岁2周前
回复 鸠摩:

微信截图_20210929200746.png
大佬,那个这个呢,是JAVA对象地址吗?

回复
鸠摩2周前
回复 四千岁:

HeapDump上的类对象地址应该指的是表示Java类的C++实例对象的地址,也就是InstanceKlass实例的地址,并不是Java对象的地址

回复