单例模式

来源:互联网 发布:用友重装后数据恢复 编辑:程序博客网 时间:2024/06/05 04:09

在单例模式中,分为懒汉式和饿汉式两种,下面是两种的代码示例


饿汉式:线程安全,确保了获取到的对象都是同一个

// 饿汉式public class SingleInstance{    private static SingleInstance instance = new SingleInstance();    private SingleInstance(){    }    public static SingleInstance getInstance(){        return instance;    }}

懒汉式:只有进行两次判断和加锁之后才线程安全

// 懒汉式public class SingleInstance{    private static SingleInstance instance = null;    private SingleInstance(){    }    public static SingleInstance getInstance(){        if(instance == null){            synchronized (SingleInstance.class){                if(instance == null){                    instance = new SingleInstance();                }            }        }    }}

使用场景:(1)资源共享的情况(2)控制资源,方便资源之间的互相通信(线程池)

1 0
原创粉丝点击