使用 Java 反射,是否可以获得局部变量的名称?例如,如果我有这个:
Foo b = new Foo();
Foo a = new Foo();
Foo r = new Foo();
是否有可能实现一个方法,可以找到这些变量的名称,如下所示:
public void baz(Foo... foos)
{
for (Foo foo: foos) {
// Print the name of each foo - b, a, and r
System.out.println(***);
}
}
编辑: 这个问题不同于 Java 中有没有找到传递给函数的变量名的方法?,因为它更纯粹地询问是否可以使用反射来确定局部变量的名称,而另一个问题(包括公认的答案)更侧重于测试变量的值。