C:\w>javap -verbose test
Compiled from "test.java"
public class test extends java.lang.Object
SourceFile: "test.java"
minor version: 0
major version: 49
Constant pool: //常量池部分最看不懂,望详细些.
const #1 = Method #5.#14; // java/lang/Object."<init>":()V
const #2 = Field #15.#16; // java/lang/System.out:Ljava/io/PrintS
tream;
const #3 = Method #17.#18; // java/io/PrintStream.println:(I)V
const #4 = class #19; // test
const #5 = class #20; // java/lang/Object
const #6 = Asciz <init>;
const #7 = Asciz ()V;
const #8 = Asciz Code;
const #9 = Asciz LineNumberTable;
const #10 = Asciz main;
const #11 = Asciz ([Ljava/lang/String;)V;
const #12 = Asciz SourceFile;
const #13 = Asciz test.java;
const #14 = NameAndType #6:#7;// "<init>":()V
const #15 = class #21; // java/lang/System
const #16 = NameAndType #22:#23;// out:Ljava/io/PrintStream;
const #17 = class #24; // java/io/PrintStream
const #18 = NameAndType #25:#26;// println:(I)V
const #19 = Asciz test;
const #20 = Asciz java/lang/Object;
const #21 = Asciz java/lang/System;
const #22 = Asciz out;
const #23 = Asciz Ljava/io/PrintStream;;
const #24 = Asciz java/io/PrintStream;
const #25 = Asciz println;
const #26 = Asciz (I)V;
{
public test();
Code:
Stack=1, Locals=1, Args_size=1
0: aload_0
1: invokespecial #1; //Method java/lang/Object."<init>":()V
4: return
LineNumberTable:
line 1: 0
public static void main(java.lang.String[]);
Code:
Stack=2, Locals=3, Args_size=1
0: bipush 10
2: istore_1
3: bipush 20
5: istore_2
6: iload_1
7: iload_2
8: iadd
9: istore_1
10: getstatic #2; //Field java/lang/System.out:Ljava/io/PrintStream;
13: iload_1
14: invokevirtual #3; //Method java/io/PrintStream.println:(I)V
17: return
LineNumberTable:
line 4: 0
line 5: 3
line 6: 6
line 7: 10
line 9: 17
}
---------------------------------------------
这是源代码:
public class test{
public static void main(String[] args){
int i,j;
i=10;
j=20;
i+=j;
System.out.println(i);
}
}
----------------------------------------------------------------------
问题???
1,const #23 = Asciz Ljava/io/PrintStream;;//前面那个L后面加分号表示什么意思?
2,Asciz这个单词怎么理解?
3,Stack=2, Locals=3, Args_size=1//表示什么意思?
4, //前面的序号不连续,为什么?
0: bipush 10
2: istore_1
3: bipush 20
5: istore_2