class指令

把常量压入栈

iconst

bipush

sipush

ldc


将一个局部变量加载到操纵栈

iload


将一个数值从操作数栈存储到局部变量表

istore


把操作数栈顶 和 第二位 相加

iadd


在堆中申请一个空间,并把地址压入操作数栈

new


把栈顶元素再压入操作数栈,此时操作数栈顶 和 第二位 数值相同

dup


执行方法

invokespecial #4 // Method java/lang/String."<init>":(Ljava/lang/String;)V

把栈顶元素视为参数 , 第二个元素视为对象地址

如果没有参数 , 那么第一个元素就是对象地址


判断语句

把栈 1 2 进行比较 返回数压入栈顶

47: if_acmpne 54 50: iconst_1 51: goto 55 54: iconst_0


把静态方法,变量压入栈顶

getstatus

posted @ 2021-03-06 09:46  ljk12345  阅读(114)  评论(0)    收藏  举报