Java中字符串常量池的默认大小是多少?

Java中字符串常量池的默认大小是多少?,java,Java,我想了解字符串常量池是否有默认大小 java上不同版本的字符串常量池是否有任何变化? 字符串常量池的默认大小是多少?在大多数JVM中,Perm空间的默认大小约为“64MB”。在大多数JVM中,Perm空间的默认大小约为“64MB”。根据文章,字符串常量池大小在不同的Java版本和版本中有所不同(但是这篇文章本身已经有3年多的历史了,所以从那时起,最新的Java版本可能已经做了一些更改) 字符串池作为HashMap实现。因此 在Java6之前,默认池大小是1009个条目,并且受PermGen大小的

我想了解字符串常量池是否有默认大小

java上不同版本的字符串常量池是否有任何变化?
字符串常量池的默认大小是多少?

在大多数JVM中,Perm空间的默认大小约为“64MB”。

在大多数JVM中,Perm空间的默认大小约为“64MB”。

根据文章,字符串常量池大小在不同的Java版本和版本中有所不同(但是这篇文章本身已经有3年多的历史了,所以从那时起,最新的Java版本可能已经做了一些更改)

字符串池作为HashMap实现。因此

  • Java6之前,默认池大小是1009个条目,并且受PermGen大小的限制,PermGen大小在Java6u30版本中变得可配置
  • Java7中,默认哈希表大小增加到60013个条目,并且仍然可以使用标志
    -XX:StringTableSize=
    进行配置
  • Java8中,PermGen区域被删除,常量池被移动到堆中,使其大小仅受程序内存限制(它仍然接受表大小选项)
  • 根据这篇文章,字符串常量池大小在不同的Java版本和发行版中有所不同(但这篇文章本身已经有3年多的历史了,所以从那时起,最新的Java发行版可能已经做了一些更改)

    字符串池作为HashMap实现。因此

  • Java6之前,默认池大小是1009个条目,并且受PermGen大小的限制,PermGen大小在Java6u30版本中变得可配置
  • Java7中,默认哈希表大小增加到60013个条目,并且仍然可以使用标志
    -XX:StringTableSize=
    进行配置
  • Java8中,PermGen区域被删除,常量池被移动到堆中,使其大小仅受程序内存限制(它仍然接受表大小选项)

  • 你问的是或?为什么?这个问题没有意义。字符串常量池足够大,可以容纳加载的类中出现的所有常量字符串文本。我也不知道大小的意义。你问的是或?为什么?这个问题没有意义。字符串常量池足够大,可以容纳所有加载的类中出现的常量字符串文本。我也不知道大小。在Java 7和Java 8中,字符串池被移出PemGen。在Java 7和Java 8中,字符串池被移出PemGen。