例如,如果将int变量a和b存储在局部变量1和2中,则此代码将计算this.f(3+b*a)
。 (此指针存储在变量0中)
iload_1
aload_0
icons_3
iload_1
iload_1
imul
iadd
invokevirtual #4
#4
在这里代表什么? 最佳答案
这是指向类文件的常量池的索引;它表示invokevirtual
的操作数存储在常量池的索引#4(将是Constant_MethodRef_info
。)如果用javap
标志调用-v
,它将转储常量池,并且您会在索引4看到它正在调用什么类和方法。