单例模式
Java内存模型的抽象示意图:
所有单例模式都有一个共性,那就是这个类没有自己的状态。也就是说无论这个类有多少个实例,都是一样的;然后除此者外更重要的是,这个类如果有两个或两个以上的实例的话程序会产生错误。
非线程安全的模式
public class Singleton { private static Singleton instance; private Singleton(){ } public static Singleton getInstance() { if (instance == null) //1:A线程执行 instance = new Singleton(); //2:B线程执行 return instance; } }
普通加锁
public class SafeLazyInitialization { private static Singleton instance; public synchronized s