JVM学习大纲
案例1:
案例源码:

字节码指令:
- 1.编译源码:

- 2.获取字节码指令的方式:
- 3.字节码指令:
0 iconst_51 invokestatic #7 <java/lang/Integer.valueOf : (I)Ljava/lang/Integer;>4 astore_15 iconst_56 istore_27 getstatic #13 <java/lang/System.out : Ljava/io/PrintStream;> 10 aload_1 11 invokevirtual #19 <java/lang/Integer.intValue : ()I> 14 iload_2 15 if_icmpne 22 (+7) 18 iconst_1 19 goto 23 (+4) 22 iconst_0 23 invokevirtual #23 <java/io/PrintStream.println : (Z)V> 26 bipush 10 28 invokestatic #7 <java/lang/Integer.valueOf : (I)Ljava/lang/Integer;> 31 astore_3 32 bipush 20 34 invokestatic #7 <java/lang/Integer.valueOf : (I)Ljava/lang/Integer;> 37 astore 4 39 getstatic #13 <java/lang/System.out : Ljava/io/PrintStream;> 42 aload_3 43 aload 4 45 if_acmpne 52 (+7) 48 iconst_1 49 goto 53 (+4) 52 iconst_0 53 invokevirtual #23 <java/io/PrintStream.println : (Z)V> 56 sipush 128 59 invokestatic #7 <java/lang/Integer.valueOf : (I)Ljava/lang/Integer;> 62 astore 5 64 sipush 128 67 invokestatic #7 <java/lang/Integer.valueOf : (I)Ljava/lang/Integer;> 70 astore 6 72 getstatic #13 <java/lang/System.out : Ljava/io/PrintStream;> 75 aload 5 77 aload 6 79 if_acmpne 86 (+7) 82 iconst_1 83 goto 87 (+4) 86 iconst_0 87 invokevirtual #23 <java/io/PrintStream.println : (Z)V> 90 return
.指令的含义:
saa
案例2:
案例源码:

字节码指令:
0 new #7 <java/lang/String>3 dup4 ldc #9 <hello>6 invokespecial #11 <java/lang/String.<init> : (Ljava/lang/String;)V>9 astore_1
10 ldc #14 <helloword>
12 astore_2
13 getstatic #16 <java/lang/System.out : Ljava/io/PrintStream;>
16 aload_1
17 aload_2
18 if_acmpne 25 (+7)
21 iconst_1
22 goto 26 (+4)
25 iconst_0
26 invokevirtual #22 <java/io/PrintStream.println : (Z)V>
29 return
指令的含义:
三、案例3:
案例源码:


