jdk1.8 常量池分析


java中的常量池分3种

1.class文件常量池(静态常量池)

2运行时常量池

3.字符串常量池

 

class文件常量池:存储区域是在堆中,编译时产生对应的class文件,主要包含字面量和符号引用

运行时常量池:存在与本地内存的元空间中,JVM运行时,在类加载完成后,将每个class常量池中的符号引用转换为直接引用,与全量池中保持一致

字符串常量池:类在加载完成,经过验证,准备之后在堆中生成字符串对象实例,然后将该字符串对象实例的引用只存储到sting pool中,string pool是一个StringTable类,是哈希表结果,里面存储的是字符串引用,具体的实例对象存储在堆中,这个stringtable表在每个hotspot中的实例只有一份,被所有类共享。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM