设计模式-单例模式

单例模式是一种创建型模式

java 复制代码
private static Singleton_Class singletonClass=new Singleton_Class();
    private Singleton_Class(){}    
    private static Singleton_Class singletonClass=new Singleton_Class();
    public static Singleton_Class getSingletonClass() {
        return singletonClass;
    }
    public void singletinSay(){
        System.out.println("这是单例模式");
    }

单例模式特点是不能创建对象,构造方法私有化不可以new对象(),通过统一的方法来获取单例对象(单例对象会随着类的加载初始化)

还有一种枚举的方式获取单例对象

java 复制代码
public enum Singleton {
    NEWSINGLETON;
    public void singletonSay(){
        System.out.println("这是枚举单例模式");
    }
}

public class Main {
    public static void main(String[] args) {
        Singleton.NEWSINGLETON.singletonSay();
    }
}

枚举的构造器是私有的,且枚举类型的每个常量在Java虚拟机中都是唯一,使用枚举来创建单例模式,会很方便

git地址

Design_pattern: 设计模式

相关推荐
x-cmd18 分钟前
[x-cmd] 终端里的飞书:lark-cli,让 AI Agent 拥有“实体办公”能力
java·人工智能·ai·飞书·agent·x-cmd
吾日三省Java32 分钟前
SpringBoot锁设计:让你的系统不再“抢”出问题!
java·spring boot·设计思路
XXOOXRT37 分钟前
Ubuntu搭建Java项目运行环境(JDK17+MySQL8.0)超详细教程
java·linux·mysql·ubuntu
m0_7190841139 分钟前
启动命令111
java
客卿1231 小时前
用两个栈实现队列
android·java·开发语言
java1234_小锋1 小时前
Java高频面试题:谈谈你对SpringBoot的理解?
java·开发语言·spring boot
空空潍1 小时前
Spring AI 实战系列(三):多模型共存+双版本流式输出
java·人工智能·spring
彭于晏Yan1 小时前
SpringBoot整合ECC实现文件签名与验签
java·spring boot·后端
pupudawang1 小时前
Spring EL 表达式的简单介绍和使用
java·后端·spring
jiankeljx1 小时前
Spring Initializr创建springboot项目,提示java 错误 无效的源发行版:16
java·spring boot·spring