Java運行時常量池存放以下內容:
字符串常量:Java中的字符串常量(例如:“Hello, World!”)被存放在常量池中,以便在程序中重復使用。
類和接口的全限定名:在Java程序中,每個類和接口都有一個全限定名,它們被存放在常量池中。
運行時常量:包括基本數據類型的常量(例如:int、float、double、boolean等)以及其對應的包裝類的常量(例如:Integer、Float、Double、Boolean等)。
符號引用:類、接口、字段和方法的符號引用(例如:類的全限定名、字段名、方法名等)被存放在常量池中,用于在運行時解析對應的實體。
字面量:一些常用的字面量(例如:整數、浮點數、字符、布爾值等)被存放在常量池中,以便在程序中重復使用。
需要注意的是,Java運行時常量池是在編譯期確定的,它與Java虛擬機規范中定義的class文件常量池有所區別。在類加載過程中,class文件中的常量池會被加載到運行時常量池中,并進行一些處理和優化。