单例模式推荐用法

2019-07-17  本文已影响0人  我是邱邱

单例模式的代码还有其他几种方式,但是不是因为效率比较低就是线程不安全,所以我直接推荐可以用的

双重检查

public class Singleton {

    private static volatile Singleton singleton;

    private Singleton() {}

    public static Singleton getInstance() {
        if (singleton == null) {
            synchronized (Singleton.class) {
                if (singleton == null) {
                    singleton = new Singleton();
                }
            }
        }
        return singleton;
    }
}

静态内部类

public class Singleton {

    private Singleton() {}

    private static class SingletonInstance {
        private static final Singleton INSTANCE = new Singleton();
    }

    public static Singleton getInstance() {
        return SingletonInstance.INSTANCE;
    }
}

参考网页:https://www.cnblogs.com/zhaoyan001/p/6365064.html

上一篇下一篇

猜你喜欢

热点阅读