可能重复:
Java反射:如何获取变量的名称?
我找到了关于这个主题的各种讨论,但从来没有任何令人满意的答案.
A anyVariableName = new A();
如何获取变量的名称anyVariableName并获取字符串"anyVariableName"?这在Java中可行吗?
如果anyVariableName是局部变量,则不能.如果它是一个字段,请使用Class#getField()或Class#getDeclaredField().
存储局部变量名的唯一位置是源(可以解析)或调试信息(如果已包含,则可以从字节码中获取)
如果它是一个字段,你可以使用Class.getDeclaredFields()如果你不知道名字.