Spe*_*cer 17 java singleton design-patterns initialization
编辑:已回答 - 错误是方法不是静态的
我使用的是Singleton设计模式
public class Singleton {
private static final Singleton INSTANCE = new Singleton();
// Private constructor prevents instantiation from other classes
private Singleton() {}
public static Singleton getInstance() {
return INSTANCE;
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是如何在另一个类中创建类Singleton的对象?
我试过了:
Singleton singleton = new Singleton();
// error - constructor is private
Singleton singleton = Singleton.getInstance();
// error - non-static method cannot be referenced from a static context
Run Code Online (Sandbox Code Playgroud)
什么是正确的代码?
谢谢,斯宾塞
Boz*_*zho 26
Singleton singleton = Singleton.getInstance();
Run Code Online (Sandbox Code Playgroud)
是正确的方法.确保你的getInstance()
方法确实如此static
.
由于您的Singleton
实现远非安全 - 您的对象可以通过反射实例化,您可能希望基于创建单例enum
归档时间: |
|
查看次数: |
27594 次 |
最近记录: |