0
Case1Welches ist bevorzugt? statisches Klassenfeld und das statische Feld einer anderen Klasse?
public class One{
private static Map<String, String> map;
static{
map = new HashMap<String,String>();
map.put("1","One");
}
public void print(){
System.out.println(map.get("1"));
}
}
Case2:
public class Constants{
private static Map<String, String> map;
static{
map = new HashMap<String,String>();
map.put("1","One");
}
}
public class Parser{
public void print(){
System.out.println(Constants.map.get("1"));
}
}
Ich habe gerade versucht, mein Problem zu imitieren. Map
wird konstante Werte haben. Bedeutet statisch nicht von der Laufzeit.
Welcher Ansatz ist hier am besten?
hängt vom Design ab. Sind Sie offen für die Freigabe von Karten mit anderen Klassen? –
übrigens, Karte in Ihrem zweiten Fall sollte öffentlich sein. –
Was versuchen Sie mit diesem Design zu erreichen? Die exponierte Map wird veränderbar sein, was ich nicht so finde, wie du willst, oder? – Valentin