单例模式

来源:互联网 发布:中国网络发展的历史 编辑:程序博客网 时间:2024/06/03 23:42
package com.SingletonDesign;/** * 单例模式恶汉式加载 * * @author ZHANGHAOHAO089 * @date 2017/12/14 */public class SingletonDesign {    private static SingletonDesign singletonDesign = new SingletonDesign();    private SingletonDesign() {}    public static SingletonDesign getInstance() {        return singletonDesign;    }}
package com.SingletonDesign;/** * 懒汉式双重判断 线程安全 * * @author ZHANGHAOHAO089 * @date 2017/12/14 */public class SingletonDesign1 {    private static SingletonDesign1 singletonDesign;    private SingletonDesign1(){}    public static SingletonDesign1 getInstance() {        if (singletonDesign == null) {            synchronized (SingletonDesign1.class) {                if (singletonDesign == null) {                    singletonDesign = new SingletonDesign1();                }            }        }        return singletonDesign;    }}
package com.SingletonDesign;/** * 静态内部类方式 * * @author ZHANGHAOHAO089 * @date 2017/12/14 */public class SingletonDesign2 {    private static class InnerClass {        private static final SingletonDesign2 singletonDesign = new SingletonDesign2();    }    private SingletonDesign2() {    }    public static SingletonDesign2 getInstance() {        return InnerClass.singletonDesign;    }}
原创粉丝点击