public class DynamicDataTransfer{
public static EnterprisePropertyInitSetting eInit = EnterprisePropertyInitSetting.getInstance();
}
public class EnterprisePropertyInitSetting{
private static EnterprisePropertyInitSetting eInit = null;
public final static String ENTERPRISE_PROPERTY_KEY_PRE = "enterprise_property_key_pre";
private Map map;
public Map getMap(){
return this.map;
}
public void clearMap(){
this.map.clear();
}
public void setMap(String key,RowSetDTO eProperty){
this.map.put(key, eProperty);
}
public void delMap(String key){
this.map.remove(key);
}
public static EnterprisePropertyInitSetting getInstance(){
if(eInit==null){
eInit=new EnterprisePropertyInitSetting();
Map eMap = new HashMap();
eInit.map=eMap;
}
return eInit;
}
}
但我断点调试出现这样的情况。eInit有一个私有的静态变量但是和DynamicDataTransfer的eInit是同一个。是我写法有问题吗? 
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
红色方块右上访的S表示他是static成员,这没问题,要不是同一个才有问题了。
另外你的单例类没有private的构造函数,无法保证是单例,另外你用的是懒汉式,getInstance最好是要有synchronized修饰