JVM运行时常量池跟静态常量池区别
2019独角兽企业重金招聘Python工程师标准>>>
最近学习了JVM原理,遇到了运行时常量池的区域定义,他是属于JVM运行时内存模型方法区中的一部分,总体分布如下图:
如下图:整体分布如下
而运行、静态常量池是属于方法区的一部分,一般我通常说的是运行时的常量区,他跟静态常量区区别是什么?
个人认为,静态常量池是针对每个被加载进入内存的class文件解析后,存放各个字面量值,符号引用的数据,而运行时常量区就是把所有的静态常量的数据汇总到一起(模糊来说)。
更底层到汇编层面来说,内存中的各个数据没有类这个概念,每次都是一个类一个方法的调用,就是相当于寄存器的相对变址寻址过程,
(上图中#1 #2等是否就是计算实际地址的符号哪?)
运行时方法区就是把每个类的唯一标识作为他的段地址(DS),而内部的各个变量字段方法等都是偏移地址(BX),等到真正入栈执行时候这些字段方法的相对定位符等被解析成为真正的地址,从而进入CS IP被识别执行;那么进一步猜想java的权限包的概念是否也可以由此得到全部的类信息汇总后进行进一步控哪
转载于:https://my.oschina.net/u/867830/blog/1609952
JVM运行时常量池跟静态常量池区别相关推荐
- 12.JDK1.8 JVM运行时数据区域概览、各区域介绍、程序计数器、Java虚拟机栈、本地方法栈、堆、堆空间内存分配(默认情况下)、字符串常量池、元数据区、jvm参数配置
12.JDK1.8 JVM运行时数据区域概览 12.1.JDK1.8 JVM运行时数据区域概览 12.2.各区域介绍 12.3.各区域介绍 12.3.1.程序计数器 12.3.2.Java虚拟机栈 1 ...
- JVM运行时数据区分析
#1.概述 整个JVM构成⾥⾯,由三部分组成:类加载器机制.运⾏时数据区.执⾏引擎. #2.JVM运行时数据区的规范 我们来聊聊这个规范怎么理解,目前运行数据区共分为了方法区.堆.虚拟机栈.本地方法栈 ...
- JVM运行时结构、Java内存管理、JVM实例、HotSpot VM对象的创建、内存布局和访问定位
1.JVM运行时结构 Java 运行时数据区域有程序计数器.Java虚拟机栈.本地方法栈.Java堆和方法区.其中前三个线程私有,随线程生而生,线程灭而灭:后面两个是线程间共享. 1.1 程序计数器 ...
- JVM运行时数据区和各个区域的作用
一.JVM主要分为5个核心区域(6个子区域),分别是: 程序计数器 Java虚拟机栈 本地方法栈 Java堆 方法区 *运行时常量池(属于"方法区"的一部分) 二.各个区域作用和描 ...
- [转]JVM运行时内存结构
[转]http://www.cnblogs.com/dolphin0520/p/3783345.html 目录[-] 1.为什么会有年轻代 2.年轻代中的GC 3.一个对象的这一辈子 4.有关年轻代的 ...
- Java -----JVM运行时数据区
一.JVM体系结构 想要了解运行时数据区,先关注一下JVM的体系结构,知道数据区在JVM的整体位置和作用. 二.JVM运行时数据区 1.程序计数器 一块较小的内存空间,它是当前线程所执行的字节码的行号 ...
- java runtime类 heap_Java 进阶(一) JVM运行时内存模型
1.JVM运行时数据区域的划分 a.程序计数器(Program Counter Register) 一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器.每个线程拥有独立的一个计数器,如果 ...
- JVM运行时的内存结构
我们都知道,JVM的垃圾收集机制能够帮开发者自动管理内存,了解JVM运行时的内存结构是理解垃圾收集机制的前提.本文主要简单介绍JVM运行时的内存结构. [JVM运行时内存中不同的数据区域] 一.PC寄 ...
- 【JVM学习-3.6】JVM运行时数据区--方法区
文章目录 1. 栈.堆.方法区的交互关系 2. 方法区的理解 2.1 方法区在哪? 2.2 方法区的基本理解 2.3 Hotspot中方法区的演进 3. 设置方法区大小与OOM 3.1 jdk7及以前 ...
最新文章
- 棉花糖主机送mysql_mysql操作
- Comparable与Comparator的区别
- 微信公众号获取acess_token并存储(php)
- webStorm activeCode
- vue问题四:富文本编辑器上传图片
- 树莓派进阶之路 (016) - 通过595驱动4位LED显示系统时间
- 设计模式C++实现(2)——单例模式
- STM32 中断详解
- the railway problem(the example of stack)
- python字符串(in 和not in)(一分钟读懂)
- python适合自学编程吗-没编程基础可以学python吗
- 安装inotify-tools,用inotifywait命令监听文件或目录的访问信息
- 厉害了网页扫码,所有方法都给你总结到这了,赶紧收藏
- 怎么使用水经注万能地图下载器制作百度行政区划个性化地图
- 计算机教室的英文音标,小学四年级英语单词(带音标).doc
- 【HTML+CSS】小米官网首页
- 进行CAD图纸文件查看时如何对其进行平移?
- 误删微信聊天记录觉得手足无措?免费教你如何恢复
- Spring boot Failed to bind properties under ‘XXX‘问题
- 开源中国20份毕业设计论文致谢,谢辞,大学生的毕业论文致谢词,致谢词的范文...
热门文章
- *在通配符及正则表达式中的差别
- C#3.0笔记(一)预备知识之Delegate
- 用spring搭建微信公众号开发者模式下服务器处理用户消息的加密传输构架(java)
- Java集合类及常用数据结构
- EasyExcel项目使用
- flutter 生成文档_Flutter文件操作
- 计算机网络应用是学什么类型的,计算机网路中服务类型及应用
- java解析shell命令_Android中执行java命令的方法及java代码执行并解析shell命令
- 鸟哥的linux私房菜简答题答案,《鸟哥的Linux私房菜》7章 Linux文件与目录管理 习题答案...
- cvpr 深度估计_CVPR再现黑科技!你还在相信“眼见为实”?