设计模式-单例模式

懒汉式单例模式

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

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;
    }
}
相关推荐
暗黑起源喵2 小时前
设计模式-工厂设计模式
java·开发语言·设计模式
wrx繁星点点9 小时前
状态模式(State Pattern)详解
java·开发语言·ui·设计模式·状态模式
金池尽干11 小时前
设计模式之——观察者模式
观察者模式·设计模式
也无晴也无风雨11 小时前
代码中的设计模式-策略模式
设计模式·bash·策略模式
捕鲸叉20 小时前
MVC(Model-View-Controller)模式概述
开发语言·c++·设计模式
wrx繁星点点21 小时前
享元模式:高效管理共享对象的设计模式
java·开发语言·spring·设计模式·maven·intellij-idea·享元模式
凉辰21 小时前
设计模式 策略模式 场景Vue (技术提升)
vue.js·设计模式·策略模式
菜菜-plus21 小时前
java设计模式之策略模式
java·设计模式·策略模式
暗黑起源喵21 小时前
设计模式-迭代器
设计模式
lexusv8ls600h1 天前
微服务设计模式 - 网关路由模式(Gateway Routing Pattern)
spring boot·微服务·设计模式