对于未记录的库存在问题,我试图在没有提供任何源代码的情况下替换.jar中的某些类。一个类是从现有的类实现的(没有java文件)所以我有所有的方法和方法签名,但没有办法从参数中产生任何感觉,因为它们都被命名为arg0,arg1 ...,因为它有很多方法和一些包含多达43个参数试图遍历参数以查看正在发生的事情。有没有办法使用String并动态获取该变量?
编辑: - -更多信息 - - 一切都是在jar文件中编译的,我可以重新打包而没有一个我想要更改的类。因此,我想要更改的类扩展了另一个已编译的类。因此,当扩展编译类时,我的IDE会自动生成所有方法及其签名,而参数是按顺序命名的,我想在每个函数中放置一个for循环来查看进来的内容而不是逐个进行一个并将其打印到控制台。我认为我在原来的问题上有点模糊。
谢谢
答案 0 :(得分:2)
不,如果已从编译的class
文件中删除这些符号,则无法恢复它们。
答案 1 :(得分:0)
除非在调试模式下编译类,否则无法访问参数名称。但是如果您只想迭代并打印传入的每个参数的值,那么如果您模拟该方法,mockito可能会帮助您。或者您可以使用图形化调试器。