深入讲解Java虚拟机系列之方法区

1.介绍

方法区就是存储了运行在Java虚拟机中所有类的信息,存储的这些类的信息在后面我们都会讲解。

我们只需要知道,Java虚拟机通过类加载器加载这个类,这个类的信息就会保存到方法区中。

 

2.方法区结构

方法区会存储类的如下信息:

1.       类名

在方法区中会存储包名/类名,Java程序中我们是包名.类名,但是在方法区中存储的却是包名/类名

2.       父类、接口

也是存储父类的包名/类名与接口的包名/接口名

3.       类与接口区分标志

为了辨别这个class到底是类还是接口,这个标志就是用来区分的

4.       权限修饰符

publicprivateprotecteddefaultstaticfinal这些修饰符

5.       常量池

这个class中包含的所有常量,常量池需要讲的东西很多,以后会有一篇文档专门介绍常量池

6.       变量信息

类中的所有成员变量的信息,成员变量的修饰符、变量类型、变量名称、变量初始值等

7.       方法信息

类中方法的修饰符、返回值、方法名、参数列表、方法字节码,方法字节码就是这个方法的内容,方法字节码就是Java虚拟机要指定的指令

8.       静态变量

static修饰的变量,存储变量的修饰符、变量名、初始值

9.       装载该类的类装载器引用

class文件是由类装载器进行装载的,在方法区的这块存储类信息的区域中也存储了类装载器的引用。

10.   java.lang.Class类对象的引用

当装载一个class文件,就会创建一个java.lang.Class的对象,这个java.lang.Class的对象就代表了这个类型

 

3.方法区概念图

 

 

文档免费下载:

百度文库:请搜索"深入讲解Java虚拟机系列之方法区"

CSDN:http://download.csdn.net/detail/zhangwendao/5012955

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值