单例模式的四种实现方式(饿汉模式、懒汉模式、静态内部类、枚举类)

本文介绍了设计模式中的单例模式,探讨了单例模式在软件开发中的重要性,并详细阐述了Java中饿汉模式、懒汉模式、静态内部类以及枚举类四种实现单例的方式,分析了各自的优缺点。对于想要提高编程效率和理解设计模式的开发者具有参考价值。

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

       首先,设计模式是我们程序员在软件开发过程中面临的一般问题的解决方案,通过学习设计模式可以使我们在编程时更加有条理性,同时培养我们写代码的思维能力,从而提高我们的工作效率。接下来就跟着博主的脚步往下走吧~

       大多数程序员可能最先接触到的设计模式就是创建模式中的单例模式,单例模式是一种创建型设计模式,是用来创建对象的。

       单例模式的核心是无论使用一个类方法多少次,都只产生一个该类对象,这样可以是系统的内存消耗减少一些。

       现在回到主题,单例模式的四种实现方式

       第一种:饿汉模式-----立即加载的单例模式(最基本的单例模式)

public class Singleton{//创建一个类

private Singleton(){}//这个类的构造器,在new时调用

private static Singleton sing = new Singleton();//一个静态的属性

public static Singleton getInstance(){//提供一个静态方法,返回当前对象

return sing;

}
}

 饿汉模式的优缺点:

优点:没有加锁,有较高的执行效率,同时是线程安全的实例。

缺点:饿汉模式在类加载时会直接实例化单例对象,不管有没有使用到该单例对象,那么当我们new出多个对象但没有使用时,就会浪费内存空间。


第二种:懒汉模式--------延迟加载的单例模式

public class LazySingleton{//这是懒汉模式中
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值