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