可以确定的是:
JDK6中,字符串常量池中的对象在方法区(在Perm Space)中;
JDK7中,字符串常量池中的对象移到了堆Heap中;
StringTable中保存了这些字符串常量对象的引用,那这个StringTable本身在哪个区,是跟着这些对象一起迁移的吗?
可以确定的是:
JDK6中,字符串常量池中的对象在方法区(在Perm Space)中;
JDK7中,字符串常量池中的对象移到了堆Heap中;
StringTable中保存了这些字符串常量对象的引用,那这个StringTable本身在哪个区,是跟着这些对象一起迁移的吗?
15 回答8.2k 阅读
8 回答5.9k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
1 回答2.1k 阅读✓ 已解决
StringTable 是 C++ 写的,不在 Java 这几个托管内存里,而是在 C-Heap 里,也就是所谓 Native Memory。