我的JAVA源代码是:public class MyJava {
public static void main(String[] args) {
int i = 3;
System.out.println(i);
}
}
用javap -c MyJava命令处理后是: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等,这些指令是什么语句?它是汇编语言吗?
public static void main(String[] args) {
int i = 3;
System.out.println(i);
}
}
用javap -c MyJava命令处理后是: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等,这些指令是什么语句?它是汇编语言吗?
搞研究,有时候看语句没办法解决的问题就只能通过看class文件来解决。
LZ想了解更多,可以看看些深入JVM的资料