运行时常量池属于方法区的一部分,一个有效的字节码文件中除了包含类的版本信息、字段、方法以及接口等描述信息之外,还包含了一项信息,那就是常量池表。那么运行时常量池就是字节码文件中常量池表的运行时表示形式。运行时常量池中包含了多种不同的常量,比如编译期就已经明确的数值字面量到运行期后才能够获得的方法或者字段引用。运行时常量池类似于传统编程语言中的符号表,但是它包含的数据却比符号表更加丰富一些。
当类装载器成功将一个类或者接口装载进JVM中,就会创建与之对应的运行时常量池。在此大家要注意,由于每一个运行时常量池所分配的内存来源于方法区,一旦所需要的内存大小超过方法区最大值,会抛出内存溢出。
原文地址:https://www.cnblogs.com/lay2017/p/8151505.html
时间: 2024-09-28 17:42:53