随笔 - 79,  文章 - 0,  评论 - 1,  阅读 - 45386

随笔分类 -  设计模式

外观者模式
摘要:1. 介绍 定义一个高层接口,给子系统中的一组接口提供一个一致的界面,用来访问子系统的一群接口,也就是说通过定义一个一致的接口,用以屏蔽内部子系统的细节,使得调用端只需跟这个接口发生调用,而无需关心这个子系统的内部细节 2. 代码实现 /** * @Description :电池充电 * @date 阅读全文
posted @ 2024-04-23 20:58 homle 阅读(8) 评论(0) 推荐(0) 编辑
组合模式
摘要:1. 组合模式介绍 在解决组织结构这种具有层级关系的结构中,如果使用传统的继承,不能很好的实现管理的操作,比如学院,系的添加,删除,遍历等; 所有可以使用组合模式把它们都看成组织结构,没有继承关系,而是一个树形结构。 2. 实现 public abstract class OrgComponent 阅读全文
posted @ 2024-04-21 15:21 homle 阅读(13) 评论(0) 推荐(0) 编辑
装饰者模式
摘要:1. 顶咖啡问题 咖啡种类:Espresso,LongBlack 调料:Milk,Soy 当需要计算不同种类咖啡和调料组合的价格时 (1)使用传统方式 这样设计,会有很多类,当需要增加一个单品咖啡或调料时,类的数量就会倍增 (2)优化方式1 优点:可以把调料放入Drink类中,通过设计调料的bool 阅读全文
posted @ 2024-04-09 21:32 homle 阅读(6) 评论(0) 推荐(0) 编辑
桥接模式
摘要:1. 手机操作问题 不同后记类型的不同品牌实现打电话功能 传统解决方式 缺点:如果此时想要在增加一种手机样式(旋转式),那么就需要在手机样式下同时在增加不同品牌的手机;同样如果想要增加一个品牌(huawei),那么就需要在每一种样式下增加品牌,会增加很多类; 2. 桥接模式 将实现和抽象放在两个不同 阅读全文
posted @ 2024-04-08 21:12 homle 阅读(5) 评论(0) 推荐(0) 编辑
适配器模式
摘要:1. 介绍 适配器模式将某个类的接口转换成客户端期望的另一个接口,用户调用适配器转换出来的目标接口方法,适配器再调用被适配者的相关接口方法; 2. 实现方式 (1)类适配器模式 /** * @Description :被适配类 * @date :2024/4/6 15:56 */ public cl 阅读全文
posted @ 2024-04-06 17:38 homle 阅读(12) 评论(0) 推荐(0) 编辑
建造者模式
摘要:1. 盖房子需求 (1)建造房子需要打桩,砌墙,封顶; (2)房子有各种各样,如普通房子,高楼。 2. 实现方式 (1)传统方式 /** * @Description :传统方式 * @date :2024/4/6 12:11 */ public abstract class AbstractHou 阅读全文
posted @ 2024-04-06 12:59 homle 阅读(3) 评论(0) 推荐(0) 编辑
原型模式
摘要:1. 原型模式介绍 创建对象的种类,并且通过拷贝这些原型,创建新的对象,无需知道如何创建的细节 2. 原型模式 问题:现在有一只羊 tom ,姓名为 : tom, 年龄为: 1 ,颜色为:白色,请编写程序创建和 tom羊属性完全相同的10 只羊 (1)传统方式解决 public class Shee 阅读全文
posted @ 2024-03-27 21:26 homle 阅读(5) 评论(0) 推荐(0) 编辑
工厂模式
摘要:1. 工厂模式介绍 提供了一种将对象创建过程封装到一个单独的类中的方式,这个类就是被称为‘工厂类’,它根据特定的条件来决定应该创建哪个对象 2. 工厂模式的创建方式 (1)简单工厂模式 public interface Phone { /** * 抽象电话功能 */ void call(); } p 阅读全文
posted @ 2024-03-26 21:04 homle 阅读(7) 评论(0) 推荐(0) 编辑
单例模式
摘要:1. 单例模式介绍 在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法) 2. 单例模式的八种方式 (1)饿汉式(静态常量)(可以使用) 1) 构造器私有化 (防止 new ) 2) 类的内部创建对象 3) 向外暴露一个静态的公共方法。getInsta 阅读全文
posted @ 2024-02-28 21:29 homle 阅读(10) 评论(0) 推荐(0) 编辑


< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示