如何从另一个类获取方法的局部变量

时间:2019-04-24 13:01:18

标签: java methods reflection local-variables

我有两个班A和B 一个类包含一个具有一些局部变量的方法。 现在我想在B类中获取特定变量的数据类型。 你能帮我吗?

我研究了Java反射。但是我发现我无法通过反射来实现,因为局部变量在运行时存储在堆栈中。而且反射只能获取实例或类变量。

for example,

class A{
     method1(){
         variable1;
     }
}
class B{
      method 2(){
           fetch variable1;
       }
}

我想要结果为variable1的数据类型。

有什么办法可以通过嘲讽或其他方式来实现它?

1 个答案:

答案 0 :(得分:0)

感谢您的支持。 我自己找到了答案。 我可以通过Java Regex Concept做到这一点。 据我对变量的命名方式的了解, 因此,我计划分析class1.java文件,首先将尝试与方法名称匹配,然后与变量名称匹配的模式。 这样我就可以在该行上声明该变量。 例如,如果我的变量是对象,      字符串abc = new String();

我将尝试使用正则表达式,例如String regex =“。 = new。()。*”

这样就可以实现我的目的。 再次感谢您的帮助。