单例模式Singleton

本文通过一个生动的例子介绍了单例模式的概念及其应用场景,并给出了两种常见的实现方式:饿汉式和懒汉式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

单例模式是设计模式中最常用且简单的模式。我常用这样一个例子来理解单例模式,有一个仓库,仓库有一个管理员,我们要经常去仓库拿东西,放东西,查看东西等等,而这写操作都是要管理员帮我们做,所以每次去仓库都需要调用管理员的这些方法。但是大家想想,难道每个人去仓库办事都需要new出一个管理员么?如果这样的话,那系统中将会有多少管理员对象呢,不仅仅浪费内存,而且感觉不安全。所以最好系统只有一个管理员。这就是单例模式。在实际应用中,举个例子,譬如对用户增删改查的管理类,对任何实体类进行增删改查的服务类等等都应该是单例模式。单例模式最常用的实现如下:

public class Singleton { //第一种办法,饿汉式 /*private static Singleton instance = new Singleton(); public static Singleton getInstance(){ return instance(); }*/ //第二种办法,懒汉式 private static Singleton instance = null; public static Singleton getInstance(){ if(instance == null){ instance = new Singleton(); } return instance; } }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值