首先要介绍下相关知识基础知识纯属拷贝首先来了解一下jvmjava虚拟机中的几个比较重要的内存区域 方法区在java的虚拟机中有一块专门用来存放已经加载的类信息常量静态变量以及方法代码的内存区域,叫做方法区常量池常量池是方法区的一部分 ,主要用来存放常量和类中的符号引用等信息堆 。

gequalsa + bfalse,因为Long的equals方法会先判断是否为Long类型,a+b是Integer类型 ,所以返回false问题4运行时常量池与字符串常量池的关系在JDK17之前,字符串常量池存在于方法区中的运行时常量池JDK17及之后,字符串常量池被移出方法区 ,转移到堆中因此,在JDK17及之后。
JDK16及以前,常量池在方法区 ,这时的方法区也叫做永久代JDK17的时候,方法区合并到了堆内存中,这时的常量池也可以说是在堆内存中JDK18及以后,方法区又从堆内存中剥离出来了 ,但实现方式与之前的永久代不同,这时的方法区被叫做元空间,常量池就存储在元空间。

本文来自作者[恭喜发财]投稿,不代表华智号立场,如若转载,请注明出处:https://www.bjxhzyykj.cn/miao/10836.html
评论列表(4条)
我是华智号的签约作者“恭喜发财”!
希望本篇文章《关于java常量池在方法区还是堆的信息》能对你有所帮助!
本站[华智号]内容主要涵盖:华智号,生活百科,小常识,生活小窍门,百科大全,经验网
本文概览:首先要介绍下相关知识基础知识纯属拷贝首先来了解一下jvmjava虚拟机中的几个比较重要的内存区域方法区在java的虚拟机中有一块专门用...