의견에 제안 된대로 최선의 방법이 될 수 있습니다.이 경우 반사가 모범 사례가 아니기 때문일 수 있습니다. 어디서든 프로그램에서 호출 할 수 있으려면
, 당신이 취급시주의해야하는 싱글 패턴, 같은 필요한 것 : 그런 다음
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
문자열과 클래스의 맵? –