单例模式代码示例

  1. 饿汉式:在类加载时就创建单例实例,线程安全。代码如下:
java 复制代码
public class Singleton {
    // 私有静态实例
    private static final Singleton instance = new Singleton();

    // 私有构造函数
    private Singleton() {}

    // 公共访问方法
    public static Singleton getInstance() {
        return instance;
    }
}
  1. 懒汉式:在第一次使用时才创建实例。在多线程环境下,若不进行同步处理会有线程安全问题。代码如下:
java 复制代码
public class Singleton {
    // 私有静态实例
    private static Singleton instance;

    // 私有构造函数
    private Singleton() {}

    // 公共访问方法
    public static synchronized Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}
相关推荐
追光少年33225 分钟前
迭代器模式
java·迭代器模式
oioihoii10 分钟前
C++17 中的 std::to_chars 和 std::from_chars:高效且安全的字符串转换工具
开发语言·c++
秋窗71 小时前
Mac下Python版本管理,适用于pyenv不起作用的情况
开发语言·python·macos
柯腾啊1 小时前
VSCode 中使用 Snippets 设置常用代码块
开发语言·前端·javascript·ide·vscode·编辑器·代码片段
超爱吃士力架1 小时前
MySQL 中的回表是什么?
java·后端·面试
付聪12101 小时前
装饰器模式
设计模式
扣丁梦想家1 小时前
设计模式教程:外观模式(Facade Pattern)
设计模式·外观模式
扣丁梦想家1 小时前
设计模式教程:装饰器模式(Decorator Pattern)
java·前端·装饰器模式
drebander1 小时前
Maven 构建中的安全性与合规性检查
java·maven
drebander1 小时前
Maven 与 Kubernetes 部署:构建和部署到 Kubernetes 环境中
java·kubernetes·maven