1、使用同步方法:private static Singleton instance;public static synchronized Singleton getInstance() {if (instance == null)instance == new Singleton();return instance;}2、放弃同步,使用静态变量:private static Singleton instance = new Singleton();public static Singleton getInstance(){
return instance;
}3、比较新颖的写法:public classSingleton{
static classSingletonHolder{
staticSingleton instance= newSingleton();
}
public staticSingleton getInstance(){
returnSingletonHolder.instance;
}
}