设计模式-单例模式

懒汉式单例模式

在第一次使用该实例的时候才会创建。

java 复制代码
package com.cocoa.singletonDemo;

/**
 * 懒汉式 单例模式
 */
public class Singleton {
    // 构造方法私有化
    private Singleton(){}
    // 单例实例
    private static Singleton singleton = null;
    public static Singleton getInstance(){
        if (singleton == null){
            synchronized (Singleton.class){
                if (singleton == null){
                    singleton = new Singleton();
                }
            }
        }
        return singleton;
    }
}

饿汉式单例模式

在类加载的时候就将实例创建出来了。

java 复制代码
package com.cocoa.singletonDemo;

/**
 * 饿汉式 单例模式
 * 在 类初始化 的时候就 自行实例化 了
 */
public class Singleton1 {
    // 构造方法私有化
    private Singleton1(){}
    // 单例实例
    private static Singleton1 singleton = new Singleton1();
    public static Singleton1 getInstance(){
        return singleton;
    }
}
相关推荐
UXbot10 小时前
一人独立交付 UI + 前端:AI 驱动 UI 设计工具的五大功能模块深度评测
前端·低代码·ui·设计模式·交互
蜡笔小马15 小时前
07.C++设计模式-组合模式
c++·设计模式·组合模式
雪度娃娃19 小时前
结构型设计模式——享元模式
c++·设计模式·享元模式
今儿敲了吗21 小时前
面向对象(三)——设计模式
笔记·设计模式
蜡笔小马1 天前
08.C++设计模式-享元模式
c++·设计模式·享元模式
qq_381338501 天前
Vue3 组合式函数设计模式:从基础封装到高级复用实战
前端·vue.js·设计模式
geovindu2 天前
go: Lock/Mutex Pattern
开发语言·后端·设计模式·golang·互斥锁模式
学习中.........2 天前
常见设计模式
java·设计模式
想学会c++2 天前
单例模式笔记总结
c++·笔记·单例模式
多加点辣也没关系2 天前
设计模式-抽象工厂模式
java·设计模式·抽象工厂模式