![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 51
渊蓝
这个作者很懒,什么都没留下…
展开
-
设计模式:模板方法模式
—《Head First设计模式(中文版)》 模板方法模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。(个人理解:其实就是将已经确定要执行的相关步骤提前写好在方法中,可不具体实现,但是提前准备好位置,方便后续扩展完善) 举例: 购物可以简单分为三个步骤:1.挑选好自己需要的商品;2.放入购物车;3.结账离开,但是去不同的市场挑选的商品种类是不同的,此时就可以先定义好去市场购物的相关操作,选择商品这个操作等到具体到哪.原创 2021-11-01 22:41:35 · 68 阅读 · 0 评论 -
设计模式:外观模式
—《Head First设计模式(中文版)》 外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。(个人看法:其实就是将一堆细小的操作通过一个大的方法包装起来,方便其他人进行调用) 举例:吃饭可以简单分为洗手、拿碗、盛饭、夹菜、吃、洗碗六个步骤,每个步骤可以单独封装成一个方法,但为了方便调用,我们还可以将吃饭封装成一个方法,里面包含这六个步骤小方法即完成了吃饭的操作。 package cn.shentianlan.studytest.designmode.原创 2021-11-01 22:40:40 · 58 阅读 · 0 评论 -
设计模式:适配器模式
—《Head First设计模式(中文版)》 适配器模式将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。 对象适配器:Client(客户)只能看到目标接口,由Adapter(适配器)实现目标接口,Adapter(适配器)与Adaptee(被适配者)组合,所有的请求都委托给被适配者。 类适配器:类适配器不是使用组合来适配被适配者,而是继承被适配者和目标类(Java中普通类无法实现多继承的) 类适配器和对象适配器唯一的差别就是类适配器同时继承了Target和Ad.原创 2021-11-01 22:39:34 · 65 阅读 · 0 评论 -
设计模式:命令模式
—《Head First设计模式(中文版)》 命令模式将"请求"封装成对象,以便使用不同的请求,队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。 结构如下所示 Client (客户)负责创建ConcreteCommand(具体命令) Invoker(调用者)持有一个命令对象,并在某个时间点调用命令对象的execute()方法,将请求具体实现 Command为所有命令声明一个接口,调用命令对象的的execute()方法,就可以让Receiver(接收者)进行相关的动作。这个接口也具备一个u.原创 2021-10-31 00:29:00 · 66 阅读 · 0 评论 -
设计模式:单例模式
–《菜鸟教程:单例模式》 单例模式 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建 普通单例模式 package cn.shentianlan.studytest.designmode.singleton; /** * @author 渊蓝 * @version 1.0 * @description 普通单例模式,.原创 2021-10-24 22:45:32 · 98 阅读 · 0 评论 -
设计模式:工厂模式
–《维基百科》 工厂方法模式(英語:Factory method pattern)是一种实现了"工厂"概念的面向对象设计模式。就像其他创建型模式一样,它也是处理在不指定对象具体类型的情况下创建对象的问题。工厂方法模式的实质是"定义一个创建对象的接口,但让实现这个接口的类来决定实例化哪个类。工厂方法让类的实例化推迟到子类中进行。"[1] 创建一个对象常常需要复杂的过程,所以不适合包含在一个复合对象中。创建对象可能会导致大量的重复代码,可能会需要复合对象访问不到的信息,也可能提供不了足够级别的抽象,还可能并不.原创 2021-10-24 13:35:09 · 89 阅读 · 0 评论 -
设计模式:装饰者模式
1 简介 –《百度百科 装饰模式》 3种设计模式之一,英文叫Decorator Pattern,又叫装饰者模式。装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 2 具体操作及实现 举例:蛋糕的制作 抽象构件角色:Dessert 甜点 package cn.shentianlan.studytest.designmode.decorator.example; /** * @author 渊蓝 * @version原创 2021-10-18 22:39:15 · 91 阅读 · 0 评论 -
设计模式:观察者模式
1.简介 –《百度百科 观察者模式》 观察者模式是一种对象行为模式。它定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。在观察者模式中,主体是通知的发布者,它发出通知时并不需要知道谁是它的观察者,可以有任意数目的观察者订阅并接收通知。观察者模式不仅被广泛应用于软件界面元素之间的交互,在业务对象之间的交互、权限管理等方面也有广泛的应用。 [1] 观察者模式(Observer)完美的将观察者和被观察的对象分离开。举个例子,用户界面可以作为一个观察者,业原创 2021-10-12 23:45:20 · 111 阅读 · 0 评论 -
设计模式:策略模式
简介 策略模式定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 --《Head First设计模式(中文版)》 策略模式是指有一定行动内容的相对稳定的策略名称。 策略模式作为一种软件设计模式,指对象有某个行为,但是在不同的场景中,该行为有不同的实现算法。比如每个人都要“交个人所得税”,但是“在美国交个人所得税”和“在中国交个人所得税”就有不同的算税方法。 策略模式: 定义了一组算法(业务规则);原创 2021-10-11 21:03:19 · 70 阅读 · 0 评论