单例设计模式

2019-08-17  本文已影响0人  kanaSki

作用:在应用程序中保证最多只能有一个实例。
优势:
1.提升运行效率
2.实现数据共享

懒汉式:(对象被调用时才去创建,但是内部含有锁,效率低)

package com;

public class SingleTon {

    private static SingleTon singleTon;

    private SingleTon() {
    }

    //    提供访问入口
//    多线程情况下,可能出现if同时成立的情况,需要添加锁
    public static SingleTon getInstance() {
        if (singleTon == null) {
            synchronized (SingleTon.class) {
                if (singleTon == null) {
                    singleTon = new SingleTon();
                }
            }
        }
        return singleTon;
    }
}

饿汉式:(类加载时便实例化)

package com;

public class SingleTon {

    private static SingleTon singleTon = new SingleTon();

    private SingleTon() {
    }

    public static SingleTon getInstance() {
        return singleTon;
    }
}
上一篇下一篇

猜你喜欢

热点阅读