《Java虚拟机原理图解》 1.2、class文件里的常量池
[最新更新:2014/11/11]
了解JVM虚拟机原理 是每个Java程序猿修炼的必经之路。
可是因为JVM虚拟机中有非常多的东西讲述的比較宽泛。在当前接触到的关于JVM虚拟机原理的教程或者博客中,绝大部分都是充斥的文字性的描写叙述,非常难给人以形象化的认知。看完之后感觉还是稀里糊涂的。
感于以上的种种,我打算把我在学习JVM虚拟机的过程中学到的东西,结合自己的理解,总结成《Java虚拟机原理图解》
这个系列,以图解的形式,将抽象的JVM虚拟机的知识详细化,希望可以对想了解Java虚拟机原理的的Java程序猿 提供点帮助。
上一章节《Java虚拟机原理图解》 1、class文件基本组织结构大致地介绍了class文件的组织结构,接下来,我们将深入每个结构,来具体了解它们。
这一章节呢,我们就来扒一扒
class文件里很重要 的一个数据区域------常量池。
它在JVM虚拟机中扮演了很重要的地位。
本章节将从以下几个方面来介绍常量池:
一. 什么是常量池, 为什么使用常量池
二. 常量池具体解释(上)
- NO1. 常量池在class文件的什么位置?
- NO2. 常量池的里面是怎么组织的?
- NO3. 常量池项 (cp_info) 的结构是如何的?
- NO4. 常量池 可以表示那些信息?
- NO5. int和float数据类型的常量在常量池中是如何表示和存储的?
( ----介绍 常量池项 CONSTANT_Integer_info, CONSTANT_Float_info)- NO6. long和 double数据类型的常量在常量池中是如何表示和存储的?
(----介绍 常量池项 CONSTANT_Long_info, CONSTANT_Double_info)- NO7. String类型的字符串常量在常量池中是如何表示和存储的?
( ----介绍 常量池项 CONSTANT_String_info,CONSTANT_Utf8_info)- NO8. 类文件里定义的类名和类中使用到的类在常量池中是如何被组织和存储的?
(----介绍 常量池项 CONSTANT_Class_info)
三. 常量池具体解释(下)
- NO9. 类中引用到的field字段在常量池中是如何描写叙述的?
(
----介绍 常量池项 CONSTANT_Fieldref_info,
CONSTANT_Name_Type_info)- NO10. 类中引用到的method方法在常量池中是如何被描写叙述的?
(----介绍
常量池项 CONSTANT_Methodref_info)- NO11. 类中引用到某个接口中定义的method方法在常量池中是如何描写叙述的?
(----介绍
常量池项 CONSTANT_InterfaceMethodref_info)- NO12. CONSTANT_MethodType_info
- NO13. CONSTANT_MethodHandle_info
- NO13.
CONSTANT_InvokeDynamic_info因为篇幅较长。该章节被分为三个部分,读者能够通过点击下列的连接查看:
第一部分: 一. 什么是常量池, 为什么使用常量池(尚未完毕,敬请期待......)
第三部分: 三. 常量池具体解释(下)(已完毕)
作者的话
本文是《Java虚拟机原理图解》系列的当中一篇。假设您有兴趣。请关注该系列的其它文章~
认为本文不错,顺手点个赞哦~~您的鼓舞,是我继续分享知识的强大动力!
-----------------------------------------------------------------------------------------------------------------------------------------
本文源自 http://blog.csdn.net/luanlouis/,如需转载。请注明出处,谢谢!
《Java虚拟机原理图解》 1.2、class文件里的常量池的更多相关文章
- 《Java虚拟机原理图解》1.4 class文件里的字段表集合--field字段在class文件里是如何组织的
0.前言 了解JVM虚拟机原理是每个Java程序猿修炼的必经之路.可是因为JVM虚拟机中有非常多的东西讲述的比較宽泛.在当前接触到的关于JVM虚拟机原理的教程或者博客中,绝大部分都是充斥的文字性的描写 ...
- 《Java虚拟机原理图解》 1.2.2、Class文件里的常量池具体解释(上)
[last updated:2014/11/27] NO1.常量池在class文件的什么位置? 我的上一篇文章<Java虚拟机原理图解> 1.class文件基本组织结构中已经提到了clas ...
- 《Java虚拟机原理图解》1.3、class文件里的訪问标志、类索引、父类索引、接口索引集合
讲完了class文件里的常量池,我们就相当于克服了class文件里最麻烦的模块了.如今,我们来看一下class文件里紧接着常量池后面的几个东西:訪问标志.类索引.父类索引.接口索引集合. 1. 訪问标 ...
- 《Java虚拟机原理图解》1.5、 class文件中的方法表集合--method方法在class文件中是怎样组织的
0. 前言 了解JVM虚拟机原理是每一个Java程序员修炼的必经之路.但是由于JVM虚拟机中有很多的东西讲述的比较宽泛,在当前接触到的关于JVM虚拟机原理的教程或者博客中,绝大部分都是充斥的文字性的描 ...
- 《Java虚拟机原理图解》1.4 class文件中的字段表集合--field字段在class文件中是怎样组织的
0.前言 了解JVM虚拟机原理是每一个Java程序员修炼的必经之路.但是由于JVM虚拟机中有很多的东西讲述的比较宽泛,在当前接触到的关于JVM虚拟机原理的教程或者博客中,绝大部分都是充斥的文字性的描述 ...
- 《Java虚拟机原理图解》1.3、class文件中的访问标志、类索引、父类索引、接口索引集合
讲完了class文件中的常量池,我们就相当于克服了class文件中最麻烦的模块了.现在,我们来看一下class文件中紧接着常量池后面的几个东西:访问标志.类索引.父类索引.接口索引集合. 1. 访问标 ...
- 《Java虚拟机原理图解》 1.2.2、Class文件中的常量池详解(上)
我的上一篇文章<Java虚拟机原理图解> 1.class文件基本组织结构中已经提到了class的文件结构,在class文件中的魔数.副版本号.主版本之后,紧接着就是常量池的数据区域了,如下 ...
- 《Java虚拟机原理图解》 1.2、class文件中的常量池
了解JVM虚拟机原理 是每一个Java程序员修炼的必经之路.但是由于JVM虚拟机中有很多的东西讲述的比较宽泛,在当前接触到的关于JVM虚拟机原理的教程或者博客中,绝大部分都是充斥的文字性的描述,很难给 ...
- 《Java虚拟机原理图解》 1.2.3、Class文件里的常量池具体解释(下)
NO9.类中引用到的field字段在常量池中是如何描写叙述的?(CONSTANT_Fieldref_info, CONSTANT_Name_Type_info) 一般而言.我们在定义类的过程中会定义一 ...
随机推荐
- STM32 UART 重映射
在进行原理图设计的时候发现管脚的分配之间有冲突,需要对管脚进行重映射,在手册中了解到STM32 上有很多I/O口,也有很多的内置外设像:I2C,ADC,ISP,USART等 ,为了节省引出管脚,这些内 ...
- 一致性Hash算法在Memcached中的应用
前言 大家应该都知道Memcached要想实现分布式只能在客户端来完成,目前比较流行的是通过一致性hash算法来实现.常规的方法是将server的hash值与server的总台数进行求余,即hash% ...
- RPC基础篇
RPC概念 RPC(Remote Procedure Call Protocol)——远程过程调用协议, 是一种进程间通信方式.它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数 ...
- cocos2d-html5对话界面设计
"use strict" var _dialogMsgBottom = null; var _dialogMsgTop = null; ; var _dialogConfig = ...
- 第一百九十六天 how can I 坚持
老妈邮的咸菜到了,美味啊,买不到,哈哈. 以后要勤给鱼换水啊,10天不换,水都臭了,拒绝懒惰. 明天要回济南了,刘松结婚,估计又没法发博客了. 两条鱼,一条罗娜,一条我,哈哈. 睡觉.
- 转】MyEclipse使用总结——使用MyEclipse打包带源码的jar包
原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4136303.html 感谢! 平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不 ...
- 使用DNSPod来处理网站的均衡负载(转)
add by zhj:配置倒是蛮简单的,其实就是把域名与多个IP进行关联,在数据库中实现这个应该也是蛮简单的. 原文:http://kb.cnblogs.com/page/75571/ 首先介绍下DN ...
- jbpm4.4+ssh配置(有些使用经验很好)
http://www.cnblogs.com/cmzcheng/archive/2011/11/20/2255806.html ———————————————————————————————————— ...
- 从Mac的Finder中访问你的iCloud文档
[从Mac的Finder中访问你的iCloud文档] 从OS X 10.7.2开始,iCloud就深入Mac当中,我们也可以在Finder中访问储存在iCloud中的文件,甚至当你拥有多台Mac的时候 ...
- HDU 5432 Rikka with Tree (BestCoder Round #53 (div.2))
http://acm.hdu.edu.cn/showproblem.php?pid=5423 题目大意:给你一个树 判断这棵树是否是独特的 一颗树是独特的条件:不存在一颗和它本身不同但相似的树 两颗树 ...