Хорошо, с улучшением Йорна я не могу изменить карту вообще, внутренне или внешне. Возможно, это не совсем понятно, но если вам нужно, чтобы карта была немодифицируемой, я думаю, что это лучше.
public class MapTest {
private static Map<String, String> map = initMap();
private static Map<String, String> initMap() {
Map<String, String> map = new HashMap<String, String>();
map.put("A", "Apple");
map.put("B", "Banana");
// etc
return Collections.unmodifiableMap(map);
}
public Map<String, String> getMap() {
return map;
}
public static void main(String[] args) {
MapTest m = new MapTest();
System.out.println(m.getMap().get("A"));
m.getMap().put("this", "that");
}
}