【深入理解】JVM学习笔记—字节码
Java虚拟机不和包括java在内的任何语言绑定,它只与“Class”特定的二进制文件格式关联,Class文件中包含Java虚拟机指令集和符号表以及若干其他辅助信息。本文将以字节码的角度来研究Java虚拟机。 字节码 Java跨平台的原因是JVM不跨平台 首先编写一个简单的java代码,一次为例进行讲解 测试1 public class MyTest1 { private int a = 1 ; public int getA ( ) { return a ; } public void setA ( int a ) { this . a = a ; } } 编译生成 MyTest.class 文件 使用反编译命令: javap MyTest ,对文件进行反编译,生成以下数据 Compiled from "A.java" public class controller . A { public controller . A ( ) ; public int getA ( ) ; public void setA ( int ) ; } 增加参数,使用反编译命令: javap -c MyTest ,生成以下数据 Compiled from "A.java" public class controller . A { public controller . A ( ) ; Code :