java常用设计模式1——单例模式

本文介绍了Java中常用的单例模式,包括饿汉式和懒汉式的实现方式,并提供了详细的代码示例。

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

       java设计模式用23种之多,但是并不是每一种都经常使用,个人认为,设计模式其实只是前人的经验总结,告诉我们这么做会使代码更优秀或者更健壮,所以并不是说我们写的代码不用设计模式就不行,而是使用了设计模式可能会更好。下面就来说一下最常用的单例模式。

单例模式就是你操作的所有对象都是同一个,一般又分为饿汉式和懒汉式两种。简单来说,饿汉式就是在类加载的时候就初始化对象(比较“着急”,是个急性子,你不用的时候就给你初始化好,你用的时候直接用),懒汉式就是实例化对象的时候再创建(比较懒,相对淡定,你啥时候用我啥时候创建)。

下面是实例代码:

(1)懒汉式

public class SingleTest {
	//将引用声明为静态私有的类成员变量
	private static SingleTest st = null;
	//将构造函数私有化,外部不能直接创建对象
	private SingleTest(){};
	//对象提供创建实例的方法
	public static SingleTest getInstance(){
		if(st == null){
			/*如果st为空,说明是第一次创建,需要new对象,
			 * 如果不为空,则说明对象已存在,直接返回该对象
			 */
			st = new SingleTest();
		}
		return st;
	}
}public class SingleTest {
	//将引用声明为静态私有的类成员变量,并且实例化
	private static SingleTest st = new SingleTest();
	//将构造函数私有化,外部不能直接创建对象
	private SingleTest(){};
	//对象提供创建实例的方法
	public static SingleTest getInstance(){
		return st;
	}
}

(2)饿汉式

public class SingleTest {
	//将引用声明为静态私有的类成员变量,并且实例化
	private static SingleTest st = new SingleTest();
	//将构造函数私有化,外部不能直接创建对象
	private SingleTest(){};
	//对象提供创建实例的方法
	public static SingleTest getInstance(){
		return st;
	}
}

以上就是java中最常用的单例模式的简单实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值