JVM执行流程与架构(对应不同版本JDK)

直接上图(对应JDK8以及以后的HotSpot)

这里主要区分说明一下 方法区字符串常量池 的位置更迭:

方法区

JDK7 以及之前的版本将方法区存放在堆区域中的 永久代空间,堆的大小由虚拟机参数来控制。

JDK8 以及之后的版本将方法区存放在 元空间 中,元空间位于 操作系统维护的直接内存中,默认情况下只要不超过操作系统承受的上限,可以一直分配。

字符串常量池

JDK6 以及之前的版本存储在方法区中的运行时常量池中

JDK7 以及以后存储在堆(Heap)中

相关推荐
超级大只老咪41 分钟前
数组相邻元素比较的循环条件(Java竞赛考点)
java
小浣熊熊熊熊熊熊熊丶1 小时前
《Effective Java》第25条:限制源文件为单个顶级类
java·开发语言·effective java
毕设源码-钟学长1 小时前
【开题答辩全过程】以 公交管理系统为例,包含答辩的问题和答案
java·eclipse
啃火龙果的兔子1 小时前
JDK 安装配置
java·开发语言
星哥说事1 小时前
应用程序监控:Java 与 Web 应用的实践
java·开发语言
派大鑫wink1 小时前
【JAVA学习日志】SpringBoot 参数配置:从基础到实战,解锁灵活配置新姿势
java·spring boot·后端
xUxIAOrUIII1 小时前
【Spring Boot】控制器Controller方法
java·spring boot·后端
Dolphin_Home2 小时前
从理论到实战:图结构在仓库关联业务中的落地(小白→中级,附完整代码)
java·spring boot·后端·spring cloud·database·广度优先·图搜索算法
醇氧2 小时前
org.jetbrains.annotations的@Nullable 学习
java·开发语言·学习·intellij-idea
Java&Develop2 小时前
Aes加密 GCM java
java·开发语言·python