java单例模式(双重检查加锁)

   public class Singleton{
      private static Singleton instance = null;//是否是final的不重要,因为最多只可能实例化一次。
      private Singleton(){}
      public static Singleton getInstance(){
          if(instance == null){
              //双重检查加锁,只有在第一次实例化时,才启用同步机制,提高了性能。
              synchronized(Singleton.Class){
                  if(instance == null){
                      instance = new Singleton();
                  }
              }
          }
          return instance;
      }
   }
   

你可能感兴趣的:(java,设计模式,单例模式)