这可是常量池啊!
class文件中除了有类的版本、字段、方法、接口等描述信息外,还有一项信息是常量池,用于存放编译期生成的各种字面量和符号引用(class文件:常量池中的14种常量项的结构总表),这部分内容将在类加载后进入方法区的运行时常量池中存放。
运行时常量池相对于class文件常量池的其中一个重要特征是具备动态性,也就是说,并不是预置入class文件中的常量池的内容才能进如方法区运行时常量池,运行期间也可将新的常量放入池中,例如String类的intern()方法。但需要注意的是,当常量池无法再申请到内存时会抛出OutOfMemoryError异常。