完全有可能为以下对象创建构造函数
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; }但这没什么关系吧?您想实现什么?也许您实际上需要延迟初始化的单例?



