- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
深入讲解Java虚拟机系列之方法区
深入讲解Java虚拟机系列之方法区
作者:张文道
目录
.1介绍 3
2.方法区结构 3
3.方法区概念图 4
1.介绍
方法区就是存储了运行在Java虚拟机中所有类的信息,存储的这些类的信息在后面我们都会讲解。
我们只需要知道,当Java虚拟机通过类加载器加载这个类,这个类的信息就会保存到方法区中。
2.方法区结构
方法区会存储类的如下信息:
类名
在方法区中会存储包名/类名,在Java程序中我们是包名.类名,但是在方法区中存储的却是包名/类名
父类、接口
也是存储父类的包名/类名与接口的包名/接口名
类与接口区分标志
为了辨别这个class到底是类还是接口,这个标志就是用来区分的
权限修饰符
public、private、protected、default、static、final这些修饰符
常量池
这个class中包含的所有常量,常量池需要讲的东西很多,以后会有一篇文档专门介绍常量池
变量信息
类中的所有成员变量的信息,成员变量的修饰符、变量类型、变量名称、变量初始值等
方法信息
类中方法的修饰符、返回值、方法名、参数列表、方法字节码,方法字节码就是这个方法的内容,方法字节码就是Java虚拟机要指定的指令
静态变量
static修饰的变量,存储变量的修饰符、变量名、初始值
装载该类的类装载器引用
class文件是由类装载器进行装载的,在方法区的这块存储类信息的区域中也存储了类装载器的引用。
java.lang.Class类对象的引用
当装载一个class文件,就会创建一个java.lang.Class的对象,这个java.lang.Class的对象就代表了这个类型
3.方法区概念图
文档评论(0)