javap命令对代码进行反汇编

java中有些代码我们无法通过源代码获取执行的逻辑,比如下面定义两个整数,我们发现Integer类中并没有这样定义的方法,但是java却可以这样定义,难免猜想中间做了什么操作但是我们又不知道

public class Main {
    public static void main(String[] args) {
        Integer a=128;
        Integer b=128;
        System.out.println(a==b);
    }
}

当我们有了javap命令,我们就可以揭开它的神秘面纱

1 cd到代码的目录
2 javac 编译成class文件
3 javap -c 类名

javap命令对代码进行反汇编
这样我们就能看到其实是调用了Integer.valueOf方法实施的初始化。