我正在编写一些代码,我希望使用BCEL来调用SomeClass方法的所有调用,并调用SomeOtherClass的方法。
现在,根据我的理解,我可以通过以下方式实现:
invokevirtual
,invokestatic
或invokespecial
说明这需要我重写很多调用,我必须处理至少三种不同的情况(invokevirtual
,invokestatic
和invokespecial
调用)。
相反,是否可以通过操纵常量池并用SomeOtherClass替换指向SomeClass的所有常量来实现它?如果是这样,怎么样?