根据字节码判断方法参数的个数

Jvm 是如何确定方法的参数个数的?

找到 Method 的 DescriptionIndex 的属性,找到对应的描述,例如:

这个例子中的 java 代码,add 方法对应的代码是 (II)I,最后一个 I 代表返回值,这个代表两个整型的参数.

​同样,(IILjava/lang/String;Z)I 代表有4个参数,字符串的表示是:Ljava/lang/String;,解析比较特殊。

0