1、Java类

public class Math {
    
    public  static  final Integer CONSTANT = 666;
    
    public  int math(){
        int a = 1;
        int b = 2;
        int c = (a+b) * 10;
        return  c;
    }

    public static void main(String[] args) {
        Math math = new Math();
        math.math();
    }
}

  生成字节码文件  javac Math.java

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

 

 

 

2、反汇编字节码文件   javap -c Main.class

Java 内存模型学习笔记 随笔 第1张

 

 

Java 内存模型学习笔记 随笔 第2张

程序计数器: 程序要执行的下一行地址指针,线程独有。

操作数栈: 数据中转内存

动态链接:

方法出口:

 

方法区: JDK8之前叫永久代,JDK8之后叫元空间。存放静态变量+常量+类元信息(Math.class类元信息)

Java 内存模型学习笔记 随笔 第3张

 

本地方法:

 本地方法栈: 

 

Java 内存模型学习笔记 随笔 第4张

 

堆结构

Java 内存模型学习笔记 随笔 第5张

Java 内存模型学习笔记 随笔 第6张

 

Java 内存模型学习笔记 随笔 第7张

 

内存溢出 OOM

Java 内存模型学习笔记 随笔 第8张

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄