JDK1.6及以前,常量池在方法区,这时的方法区也叫做永久代;JDK1.7的时候,方法区合并到了堆内存中,这时的常量池也可以说是在堆内存中;JDK1.8及以后,方法区又从堆内存中剥离出来了,但实现方式与之前的永久代不同,这时的方法区被叫做元空间,常量池就存储在元空间。
2、String Pool(字符串池、字符串常量池) String Pool(字符串池),即String Literal Pool, 又叫全局字符串池、字符串常量池。 是在类加载完成,经过验证,准备阶段之后在堆中生成字符串对象实例,然后 将该字符串对象实例的引用值 存到 String Pool 中。 记住:String Pool 中存的是引用值,而不是具体的实例对象,...