设计模式(单例模式)

单例模式

单例模式定义如下: 单例模式(Singleton Pattern):确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。单例模式是一种对象创建型模式。

单例模式有三个要点:

  • 某个类只能有一个实例;
  • 它必须自行创建这个实例;
  • 它必须自行向整个系统提供这个实例。
java 复制代码
package com.pengpan.designmode.singlemode;

public class SingleMode {
    // volatile关键字防止指令重排序
    private volatile static SingleMode instance;
    // 构造函数私有化
    private SingleMode() {};

    // 双重校验锁
    public static SingleMode getInstance() {
        if (instance == null) {
            synchronized (SingleMode.class) {
                if (instance == null) {
                    instance = new SingleMode();
                }
            }
        }
        return instance;
    }
}
相关推荐
阿波罗尼亚14 小时前
Head First设计模式(十四) 设计原则 其他的模式
设计模式
期待のcode14 小时前
Java的单例模式
java·开发语言·单例模式
山风wind17 小时前
设计模式-责任链模式:让请求在链条中流动直到被处理
设计模式·责任链模式
invicinble18 小时前
设计模式全局预览,以及为什么会
设计模式
xxxxxxllllllshi18 小时前
深入解析单例模式:从原理到实战,掌握Java面试高频考点
java·开发语言·单例模式·面试
小股虫19 小时前
让系统“杀不死”:同步与异步场景下的弹性设计模式手册
分布式·微服务·设计模式·架构·团队建设·方法论
山风wind19 小时前
设计模式:状态模式详解-让对象的行为随状态改变而改变
设计模式·状态模式
ShineSpark20 小时前
C++单例模式的演进:从经典实现到现代线程安全范式
c++·安全·单例模式
__万波__20 小时前
二十三种设计模式(十八)--中介者模式
java·设计模式·中介者模式
自由生长20241 天前
设计模式和设计原则-中高级架构思路-面向接口编程
设计模式