Class文件常量池、运行时常量池、字符串常量池

  • Class常量池:保存类编译生成的字面量和符号引用。Class文件除了类字段,方法,接口描述等,还有Class常量池ui

  • 运行时常量池: 是JVM的概念,除了存放编译生成字面量和符号引用。还容许运行时产生常量,好比String.intern方法lua

    • JDK 1.6 中运行时常量池在方法区,而方法区放在内存中的永生代。
    • JDK 1.7中常量池从方法区中移了出来,在Java 堆(Heap)中开辟了一块区域存放运行常量池。
    • JDK1.8 将方法区直接放在一个与堆不相连的本地内存区域,这个区域被叫作元空间。
  • 字符串常量池。String类管理的常量池,处于堆内存中。.net

参考:code

好好说说Java中的常量池之Class常量池blog

《Java虚拟机原理图解》 1.2.二、Class文件中的常量池详解(上)接口

https://www.zhihu.com/question/309938291/answer/579500930内存

聊一聊让我蒙蔽一夜的各类常量池字符串

相关文章
相关标签/搜索