方法区、永久代、元空间的区别
上图为JVM运行时数据区。1、方法区:(逻辑上)是JVM的一个规范,所有虚拟机必须要遵守的。 是JVM所有线程共享的,主要用于存储类的信息、常量池、方法数据、方法代码等。 方法区逻辑上属于堆的一部分(下文会有提及),但是为了与堆区分,通常又叫非堆(Heap)区2、堆堆是JVM中线程共享的,在虚拟机启动的时候就已创建。 所有对象(对象本身)和数据都在堆中存放,也是GC的主要区域3、PermGen(永久代)PermGen, 就是PermGen space,全称是Perma...