コメントが示唆しているように、この場合は反射がベストプラクティスではない可能性があります。他の場所で、あなたが使用することができ、その後
public class ClassNameHandler {
private static ClassNameHandler instance = null;
protected ClassNameHandler() {
// Exists only to defeat instantiation.
}
public Map<String, File> map = new HashMap<String, File>();
public File f = ClassName.f;
map.put("ClassName.f", f);
//Add more files or variables to the map
public static ClassNameHandler getInstance() {
if(instance == null) {
instance = new ClassNameHandler();
}
return instance;
}
}
:
はどこでもあなたのプログラムの中からそれを呼び出すことができるようにするには、取り扱いに注意する必要があるシングルトンパターン、のようなものが必要だろう
String str = "ClassName.f";
ClassNameHandler.map.get(str);
実装のためにシングルトンパターンをダブルチェックします。あまりにも多くのように聞こえる場合は、利用可能な他のオプションがあるかもしれませんが、多くのコンテキストを提供していないか、またはあなたのアプリケーションの目的が何であるか、それは依存します。
あなたは反射を探しています。しかし、代わりに地図を使うべきでしょう。 – SLaks
どうやって使用しますか? – user6615347
クラスの文字列のマップですか? –