一.java运行时数据区 也可以称为java内存区域,和java内存模型不是一回事,不要弄混,这里基于jdk1.8之前 1.1.方法区 线程共享,类装载过程中产生的java.lang.Class对象保存在方法区,而不是堆,请参考<深入理解java虚拟机>P215 jdk1.8之前HotSpot通过永久带实现方法区,为了把GC可以像堆一样管理内存,能够复用代码,1.8移除永久带,通过本地内存实现方法区, 其他虚拟机没有永久带的概念,因为更容易出现内存溢出 主要存放类信息.常量.静态变量.即时编译…