jvm内存区域划分

    1. 存放类的方法区。主要存放.class文件加载进来的类。jdk1.8以后这块区域的名字改为“Metaspace”。
    2. 执行代码指令用的程序计数器。程序计数器就是用来记录当前执行的字节码指令位置,也是记录目前执行到了哪一条字节码指令。
    3. java虚拟机栈。java代码在执行时,需要线程来执行某个代码。需要有一块方法来保存每个方法内的局部变量的数据。每个线程都有自己的java虚拟机栈,如果线程执行了一个方法,就会对这个方法调用创建对应的一个栈帧,方法执行完,出栈。
    4. java堆内存。堆内存主要用来存放对象。

    image.png