Java中单例模式的几种正确实现方法

2014-11-19 08:25:17 · 作者: · 浏览: 23

  第一种:同步


  public class Singleton {


  private static Singleton instance;


  private Singleton() {


  }


  public synchronized static Singleton getInstance() {


  if (instance == null) {


  instance = new Singleton();


  }


  return instance;


  }


  }


  第二种:静态初始化


  public class Singleton {


  private static Singleton instance = new Singleton();


  private Singleton() {


  }


  public static Singleton getInstance() {


  return instance;


  }


  }


  第三种:静态holder类


  public class Singleton {


  private Singleton() {


  }


  private static class SingletonHolder {


  public static Singleton instance = new Singleton();


  }


  public static Singleton getInstance() {


  return SingletonHolder.instance;


  }


  }


  编辑特别推荐: