3

可能重复:
是否可以在运行时在 java 中获取对象的声明名称?

是否可以在运行时在 Java 中获取字符串引用的名称?

前任:

String rep="asd"; 

在这里,我可以将rep变量的名称命名为“rep”吗?

4

2 回答 2

5

引用名称不过是变量的名称。它只是一个指向对象的引用。

你不能在运行时得到它。主要是因为,可能指向该 String 对象或任何对象的许多引用之间可能存在冲突。

想一想:-

String str = "Rohit";
String abc = str;

现在,您有两个引用strabc指向相同的文字Rohit

所以,如果你想在运行时引用。你会得到哪个参考?这就是为什么它在 Java 中是不允许的。甚至没有通过Reflection

但是,如果您愿意,您可以手动维护所有参考名称。但这将是一项乏味的工作。但我有一个问题->Why on earth would you need that?

于 2012-10-12T08:18:03.970 回答
2

如果你问这个问题,很有可能你做错了什么。如果没有关于您实际在做什么的更多信息,简短的回答是“不,这是不可能的”,但是,如果由于某种原因您在运行时确实需要变量名,那么最好的办法是使用哈希图您可以在其中查看键的标签名称以及其中包含的值。

于 2012-10-12T08:18:21.363 回答