jdk1.8常量池分析
java中的常量池分3种
1.class⽂件常量池(静态常量池)字符串常量池存放的是引用还是对象
2运⾏时常量池
3.字符串常量池
class⽂件常量池:存储区域是在堆中,编译时产⽣对应的class⽂件,主要包含字⾯量和符号引⽤
运⾏时常量池:存在与本地内存的元空间中,JVM运⾏时,在类加载完成后,将每个class常量池中的符号引⽤转换为直接引⽤,与全量池中保持⼀致
字符串常量池:类在加载完成,经过验证,准备之后在堆中⽣成字符串对象实例,然后将该字符串对象实例的引⽤只存储到sting pool 中,string pool是⼀个StringTable类,是哈希表结果,⾥⾯存储的是字符串引⽤,具体的实例对象存储在堆中,这个stringtable表在每个hotspot中的实例只有⼀份,被所有类共享。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。