`

java 单例模式

    博客分类:
  • java
 
阅读更多

 

 

//线程安全
public class Singleton{
private Singleton(){}
private static Singleton s=new Singleton();
pubic static Singleton getInstance(){
return s;
}
}
//非线程安全+延迟初始化
public class Singleton{
private Singleton(){}
private static Singleton s=null;
pubic static Singleton getInstance(){
if(s==null)return s;
return s=new Singleton();
}
}
//线程安全+延迟初始化
public class Singleton { 
    private Singleton() {} 
     private static class Holder {  //holds the singleton class 
          private static final Singleton s= new Singleton(); 
     } 

       public static Singleton getInstance() { 
            return Holder.s; 
       } 
}

//线程安全 枚举实现
enum Singleton{  
  INSTANCE;  
 //其他方法
} 
 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics