设计模式-单例模式

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

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: 设计模式

相关推荐
i220818 Faiz Ul4 分钟前
二手交易系统|基于springboot + vue二手交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·二手交易系统
旷世奇才李先生12 分钟前
Spring Security OAuth2完整集成方案
java
逍遥德15 分钟前
SpringBoot自带TaskScheduler 接口实现定时任务的动态增、删、启、停。
java·spring boot·后端·中间件
次次皮21 分钟前
代理启动前端dist包
java·前端·vue
多加点辣也没关系22 分钟前
设计模式-模板方法模式
设计模式·模板方法模式
zmsofts23 分钟前
Maven核心能力深度解析:从项目管理到扩展机制
java·python·maven
段ヤシ.26 分钟前
回顾Java知识点,面试题汇总Day5(持续更新)
java·开发语言
不会C语言的男孩36 分钟前
C++ SLTL编程
java·开发语言·c++
java修仙传39 分钟前
Java 实习日记:从业务表关系到节点价格分析接口改造
java·开发语言·实习
码农-阿杰1 小时前
Java 线程等待唤醒机制深度解析:synchronized、ReentrantLock、LockSupport 底层实现对比
java·开发语言·c++