class Singleton{
private Singleton(){
}
private static Singleton singleton = null;
public static Singleton getInstance(){
if(null == singleton){
singleton = new Singleton();
}
return singleton;
}
public String otherOperation(){
//方法实现
}
}
Client:
String str = Singleton.getInstance().otherOperation();
多线程时使用 double-check 模式确保线程安全:
class Singleton{
private Singleton(){
}
private static Singleton singleton = null;
public static Singleton getInstance(){
if(null == singleton)
sychronized (Singleton.class){
if(null == singleton){
singleton = new Singleton();
}
}
}
return singleton;
}
}