我有一个静态方法类,可以在类内部对Map进行操作,当调用该类时,我希望Map被设置好。我尝试使用私有构造函数,但它没有被调用。我的代码相关部分如下:
public class MyClass
{
private static final String KEYS = "ABC";
private static final String[] DATA = {"AAA", "BBB", "CCC"};
private static HashMap<Character, String> myMap;
private MyClass() {
System.out.println("Running constructor");
populateMyMap();
}
private static void populateMyMap() {
myMap = new HashMap<Character, String>();
for (int i=0; i < KEYS.length; i++) {
myMap.put(KEYS.charAt(i), DATA[i]);
}
}
//various static methods
}
这里使用私有构造函数是否正确?如果是,那么我做错了什么?
如果这是一篇重复的文章,我很抱歉;我已经尝试搜索答案,但不确定该搜索什么!