JVM 详解
Posted helloqiufei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JVM 详解相关的知识,希望对你有一定的参考价值。
----------- 你的时间不多了,抓紧做你想做的
引言:
JVM 其实没有那么神秘, 其实就是运行在操作系统上,帮助我们运行程序的一个程序
一、规范
根据《Java 虚拟机规范(Java SE 7 版)》规定,Java 虚拟机所管理的内存如下图所示
个人理解:规范只是一个约束,但是在具体的不同的java 虚拟机实现厂商细节是不一样的 , 目前我们接触到大多都是sun公司的hotSpot 虚拟机,
HotSpot 对于内存区域的具体划分没有像上面划分的这么细,它主要就划分成两个部分,一个是堆一个是栈。
知识点:
宏观来看:
方法区 + 堆: 用于存放数据的
虚拟机栈 + 本地方法栈 + 程序计数器 : 用于存放执行的逻辑的
微观来看
方法区: 用于存放类的元数据(元数据: 简单名字 + 描述信息, 例: spring.io.file + public + static, 这些描述这个类的信息的东西)
堆: 用于存放类的实例数据
字符串常量池存放在方法区中‘’‘’
局部变量表存放在栈里面
以上是关于JVM 详解的主要内容,如果未能解决你的问题,请参考以下文章