Noo*_*oor 0 java singleton design-patterns
下面是使用单例设计模式的类:
class Singleton
{
private static Singleton instance;
private Singleton()
{
...
}
public static synchronized Singleton getInstance()
{
if (instance == null)
instance = new Singleton();
return instance;
}
...
public void doSomething()
{
...
}
}
Run Code Online (Sandbox Code Playgroud)
我想知道关于上述课程的一些设计问题?为什么实例变量是instance私有的和静态的.我知道私有使实例变量只能访问该特定类的对象,但它如何帮助?
如果它是公开的,那么每个人都可以使用Singleton.instance并且会抱怨因为它是空的.使其成为私有强制它们使用getInstance(),这保证返回非null实例.
如果它不是静态的,那么它将是Singleton的一个实例变量,因此你需要一个Singleton实例来访问唯一没有多大意义的Singleton实例.
| 归档时间: |
|
| 查看次数: |
296 次 |
| 最近记录: |