单例模式
单例模式
单例模式最优方案: 线程安全,并且效率高,代码如下:
public class Singleton {//使用volatile保证了多线程访问时instance变量的可见性private volatile static Singleton instance;// 定义一个私有构造方法private Singleton() {}public static Singleton getInstance() {// 对象实例化时与否判断(不使用同步代码块,instance不等于null时,直接返回对象,提高运行效率)if (instance == null) {//同步代码块(对象未初始化时,使用同步代码块,保证多线程访问时对象在第一次创建后,不再重复被创建)synchronized (Singleton.class) {//未初始化,则初始instance变量if (instance == null) {instance = new Singleton();}}}return instance;}}
浙公网安备 33010602011771号