模式:模式就是解决一类问题的固定步骤。
模式的概念最早起源于建筑行业…
软件行业中有23种设计模式
常用:
单例设计模式
模板设计模式
装饰者设计模式
观察者设计模式
工厂设计模式
单例设计模式:保证一个类在内存中只有一个对象(防止别人new来new去),
实际上就是想防止别人随意new对象,耗费内存空间,但是又不能不提供对象来使用,于是就用这种模式来控制对象的数量。
//饿汉式单例设计模式
class Single{
//1.私有化构造函数数,防止别人new来new去
private Single(){}
//2.声明本类的引用类型变量,并且使用该变量指向本类对象
private static Single s = new Single();
//3. 提供一个公共静态的方法获取本类的对象
public static Single getInstance(){
return s;
}
}
缺点:不用的时候就new了一个对象,可能一直都用不上这个对象。多此一举。
//懒汉式单例设计模式
class Single{
//1.私有化构造函数数,防止别人new来new去
private Single(){}
//2.声明本类的引用类型变量,但是不创建本类对象
private static Single s ;
//3. 提供一个公共静态的方法获取本类的对象,获取之前先判断是否已经创建了本类对象,
// 如果已经创建了,那么直接返回对象即可;如果没有创建对象,那么先创建本类对象再返回。
public static Single getInstance(){
if (s == null){
s = new Single();
}
return s;
}
}
优点:保证了即用即取。
推荐使用: 饿汉单例设计模式,因为懒汉单例设计模式会存在线程安全问题,目前还不能保证一个类在内存中只有一个对象。
本文深入探讨了软件设计中的单例设计模式,包括其概念、目的及两种实现方式:饿汉式与懒汉式。饿汉式单例设计模式预先创建实例,确保资源立即可用,而懒汉式则在首次请求时创建实例,节省资源。文中详细解释了每种模式的优缺点,为开发者提供了选择合适模式的依据。
1271

被折叠的 条评论
为什么被折叠?



