求大佬指点哈!枚举实现单例模式怎么传参数?

importcontroller.ReadXMLConfig;
publicenumXMLDataCollection{
INSTANCE;
privateReadXMLConfiginstance;
XMLDataCollection(Stringxmlpath)
{
instance=newReadXMLConfig(xmlpath);
}
publicReadXMLConfiggetInstance()
{
returninstance;
}
}
比如这样子,,newReadXMLConfig(xmlpath),这不就要求ReadXMLConfig构造方法公开了吗,还怎么保证自己是单例?
不传参数又怎么知道要读哪个xml,网上都找不到例子参考。
白板的微信
浏览 333回答 2
2回答

PIPIONE

我劝你还是多看看单例相关的博文吧,网上很多的。由于priavte只能在类内部访问,所以单例一般都是这个类自己的单例,也就是说,ReadXMLConfig的单例通常是通过ReadXMLConfig.getInstance()来实现,而不是另一个类的getInstance()来实现。Spring中配置的配置的单例除外,那个是单例由框架来保证,而不是由语法来保证。

隔江千里

实现接口的enum单例(接口省略)publicenumSingletonimplementsMySingleton{INSTANCE;@OverridepublicvoiddoSomething(){System.out.println("completesingleton");}publicstaticMySingletongetInstance(){returnSingleton.INSTANCE;}}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript