几种单例模式
1. 懒汉-线程不安全
public class SingleLon{
    private static SingleLon instance = null;
    private SingleLon(){}
    public  static SingleLon getInstance(){
        if(singleLon == null){
              instance = new SingleLon();
        }
        return instance;
    }
}        
2. 懒汉-线程安全
public class SingleLon{
    private static SingleLon instance = null;
    private SingleLon(){}
    public  static Sychronized SingleLon getInstance(){
        if(singleLon == null){
              instance = new SingleLon();
        }
        return instance;
    }
} 
3. 饿汉-线程安全-内存占用较大,类加载时就创建了实例
public class SingleLon{
    private static SingleLon instance = new SingleLon();
    private SingleLon(){}
    public  static SingleLon getInstance(){
        return instance;
    }
} 
4. 双锁
public class SingleLon{
    private static SingleLon instance = null;
    private SingleLon(){}
    public  static SingleLon getInstance(){
        if(instance == null){
              Sychronized(SingleLon.class){
                   if(instance == null){
                      instance = new SingleLon();
                   }
              }
              
        }
        return instance;
    }
} 
 
                    
                 
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号