enum:
public enum BitCheck { INSTANCE; BitCheck() { props = new HashMap<String, String>(); } private final Map<String, String> props; //..}
注意:
props
字段可以是最终的(我们喜欢final
)props
不必是static
- 构造函数会自动为您调用
注意最后一点。由于
enum-singletons是在
enumBitCheck加载类时急切创建的,因此您无法将任何参数传递给构造函数。当然可以通过
INSTANCE声明:
public enum BitCheck { INSTANCE(new HashMap<String, String>()); BitCheck(final Map<String, String> props) { this.props = props; }
但这没什么关系吧?您想实现什么?也许您实际上需要延迟初始化的单例?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)