请问下常量池到底是存储在元空间还是堆中呢?
来源:6-10 Java内存模型之线程共享部分
Goodbye丿Youth
2019-03-27
如上面两个图,老师,我有点被搞晕了,我现在的理解是是两个常量池指的不是同一个,一个存在堆中,一个存在元空间中,是怎么样吗?是不是不同的常量池会被存放到不同的地方呢?
写回答
1回答
-
同学好,字符串常量池和常量池的区别可以看这个
https://blog.csdn.net/qq_26222859/article/details/73135660
这里咱们统一一下说法,关于上面的第一个回答,答得比较笼统,实际上字符串常量池分成两个部分,字符串实例以及一个叫做StringTable的东西,StringTable存储在元空间,而String实例对象 jdk8之后可以存储在堆中,然后把引用保存在StringTable里,而常量池是存储在元空间中的
012019-03-28
相似问题