下面就开始介绍方法表

重新修改源代码,增加一个方法

public class Test {

private int a;

public byte b;

public static Object obj;

protected Object[] objs;

public int add(int a,int b){
return a+b;
}

}

Class格式(六)方法表集合

下面两个字节表示方法个数,00 02表示有两个方法,我只定义了一个方法,为什么会出现两个方法

其实里面有一个是默认提供的构造方法,

方法表结构

Class格式(六)方法表集合

Class格式(六)方法表集合

第一个方法:01 00表示修饰符为public,00 0C 表示对应常量池第12个位置为方法名<init>,00 0D表示对应常量池第13

个位置返回值void类型,属性方面先不做介绍,比较复杂,后期再说。

第二个方法:01 00表示修饰符为public,00 10 表示对应常量池第16个位置为方法名add,00 11表示对应常量池第17

个位置返回值void类型,并且有两个int入参,属性方面先不做介绍,比较复杂,后期再说。

这样就简单介绍了方法表集合。

相关文章:

  • 2022-12-23
  • 2022-01-07
  • 2021-08-21
  • 2021-09-16
  • 2021-04-24
  • 2021-12-08
  • 2021-10-18
猜你喜欢
  • 2021-09-07
  • 2021-10-01
  • 2021-10-05
  • 2021-10-14
  • 2022-12-23
  • 2021-12-29
  • 2021-11-23
相关资源
相似解决方案