当前位置: 代码迷 >> J2SE >> 怎么看懂java class文件中的指定?它是汇编语言吗
  详细解决方案

怎么看懂java class文件中的指定?它是汇编语言吗

热度:236   发布时间:2016-04-24 12:34:28.0
如何看懂java class文件中的指定?它是汇编语言吗?
我的JAVA源代码是:
Java code
public class MyJava {    public static void main(String[] args) {        int i = 3;        System.out.println(i);    }}


用javap -c MyJava命令处理后是:
Java code
Compiled from "MyJava.java"public class MyJava extends java.lang.Object{public MyJava();  Code:   0:    aload_0   1:    invokespecial    #1; //Method java/lang/Object."<init>":()V   4:    returnpublic static void main(java.lang.String[]);  Code:   0:    iconst_3   1:    istore_1   2:    getstatic    #2; //Field java/lang/System.out:Ljava/io/PrintStream;   5:    iload_1   6:    invokevirtual    #3; //Method java/io/PrintStream.println:(I)V   9:    return}



比如iconst_3,istore_1等,这些指令是什么语句?它是汇编语言吗?

------解决方案--------------------
不是汇编语言,是伪代码指令(和汇编语言相似),JVM就是解析这些指令,把它翻译成相应的二进制机器码来执行
LZ想了解更多,可以看看些深入JVM的资料

  相关解决方案