GC是否在运行时常量池上运行?

如果是,什么时候?
如果否,如果字符串池中充满了字符串文字,会发生什么?

我做了谷歌,但努力找到任何与此问题有关的东西,也尝试在我的机器上的程序。

最佳答案

您的问题太低级了,因为可以通过观察字符串文字始终可以访问(从出现的类中引用)来解决。

自从Java 6将常量池移至常规堆以来,该常量池恰好要进行垃圾回收。仅在您的代码使用许多String.intern()调用(这些调用可以将字符串添加到常量池)中时,此函数才起作用。

08-17 00:38