关闭

设计模式-单例

标签: 设计模式Android
46人阅读 评论(0) 收藏 举报
分类:

为了保持对象的一致性,实现对象只被创建一次,单例模式被经常用到,整理了几种常用的写法如下:

普通单例模式

基本满足日常使用的需要

public class Singleton {

    private static Singleton instance;

    public static Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton ();
        }
        return instance;
    }

    private Singleton () {
    }
}
双重校验单例模式

应用于高并发情况

public class Singleton {

    private static Singleton instance;

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

    private Singleton () {
    }
}
Effective Java中提到的单元素枚举类型实现

无偿提供了序列化机制,可应对序列化及反射攻击

public enum Singleton {

    INSTANCE;

    public void test(){
    }
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:175次
    • 积分:31
    • 等级:
    • 排名:千里之外
    • 原创:3篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档