![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 54
The Pipi
这个作者很懒,什么都没留下…
展开
-
设计模式-访问者模式
设计模式-访问者模式原创 2020-08-09 00:56:52 · 96 阅读 · 0 评论 -
设计模式-解释器模式
设计模式-解释器模式原创 2020-08-04 00:51:01 · 97 阅读 · 0 评论 -
设计模式-享元模式
设计模式-享元模式运用共享技术有效地支持大量细粒度的对象在享元对象内部并且不会随环境变化而改变的共享部分,可以称为是享元对象的内部状态,而随环境改变而改变的、不可共享的状态就是外部状态我们以多颜色的笔举例先看笔的抽象类和具体实现public interface Pen { void write(String content);}public class ConcretePen implements Pen { private String color;原创 2020-08-02 12:24:16 · 103 阅读 · 0 评论 -
设计模式-中介者模式
设计模式-中介者模式用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式的相互引用,从而使其耦合松散,而且可以独立的改变他们之间的交互。我们拿租房中介来举例先定义抽象的用户public abstract class User { @Setter protected Mediator mediator; @Getter protected UserType type; @Getter protected String name;原创 2020-08-02 00:17:58 · 80 阅读 · 0 评论 -
设计模式-责任链模式
设计模式-责任链模式使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递请求,直到有一个对象处理它为止。我们来举个例子假如你住在XX省XX市XX县,当你在网上购物的时候,网站会从最近的仓库发货给你,根据不同的商品会有不同的选择,因为每个仓库中存储的货物并不相同。先定义一个配货请求@Data@AllArgsConstructorpublic class AllocatingRequest { private String g原创 2020-08-01 21:53:06 · 123 阅读 · 0 评论 -
设计模式-命令模式
设计模式-命令模式原创 2020-07-31 00:42:28 · 112 阅读 · 0 评论 -
设计模式-桥接模式
设计模式-桥接模式将抽象部分与它的实现部分分离,使它们都可以独立地变化比如我们现在手机上的APP在开发的时候都会开发两个版本,以适配ios和安卓,我们就拿这个来举例先定义APP的抽象类public abstract class MobileApp { abstract String getName();}再定义操作系统的抽象类,它聚合了APPpublic abstract class MobileSystem { List<MobileApp> apps =原创 2020-07-27 19:51:18 · 89 阅读 · 0 评论 -
设计模式-单例模式
设计模式-单例模式单例模式大家应该都很熟悉了,再重复一下它的定义:保证一个类只有一个实例,并提供一个访问它的全局访问点下面来讨论一下实现方式首先是最常见的懒汉式和饿汉式饿汉式public class Singleton1 { private static Singleton1 instance = new Singleton1(); private Singleton1() { } public static Singleton1 getInstance(){原创 2020-07-26 13:55:41 · 61 阅读 · 0 评论 -
设计模式-迭代器模式
设计模式-迭代器模式原创 2020-07-25 09:49:03 · 74 阅读 · 0 评论 -
设计模式-组合模式
设计模式-组合模式原创 2020-07-24 19:05:19 · 61 阅读 · 0 评论 -
设计模式-备忘录模式
设计模式-备忘录模式不破坏封装的捕获并保存对象的内部状态,并可以在之后恢复保存的状态原创 2020-07-24 00:10:17 · 68 阅读 · 0 评论 -
设计模式-适配器模式
设计模式-适配器模式原创 2020-07-22 14:34:08 · 92 阅读 · 0 评论 -
设计模式-状态模式
设计模式-状态模式原创 2020-07-19 23:13:29 · 73 阅读 · 0 评论 -
设计模式-观察者模式
设计模式-观察者模式别名:发布-订阅模式定义了多个订阅者监听某个发布者的一对多依赖关系,当发布者发布消息时订阅者会被通知并自主处理状态变化。看代码我们先定义 Subject 和 Observerpublic interface Observer { void update(Object obj);}public abstract class Subject { private List<Observer> observers = new ArrayList&l原创 2020-07-18 17:49:52 · 97 阅读 · 0 评论 -
设计模式-建造者模式
设计模式-建造者模式别名:创建者模式建造者模式针对复杂对象,分离它们的构建与表示,达到同样构建过程创建不同表示的目的。建造者模式封装了复杂对象的构建过程,通过子类继承或者重载的方式,动态的创建具有复合属性的对象。...原创 2020-07-17 23:02:21 · 84 阅读 · 0 评论 -
设计模式-外观模式
设计模式-外观模式外观(Facade)模式为子系统中的一组接口提供一个一致的界面。它的结构比较简单,为系统定义了高层接口。包含对各个子系统的引用,调用方通过高层接口调用各个子系统的功能。外观模式通过增加 facade 实现了客户端与子系统之间的松耦合,子系统的迭代不会被客户端感知比如我们去餐馆吃饭点餐有点餐,制作和上菜三个步骤public class Ordering { public void order(String dish){ System.out.printl原创 2020-07-16 19:46:42 · 115 阅读 · 0 评论 -
设计模式-模板方法模式
设计模式-模板方法模式定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法模式通过将一些通用的,固定的逻辑抽离到抽象父类中,来减少代码重复,实现代码复用。比如公司在招聘的时候要进行面试,面试的基本流程是相似的public abstract class AbstractInterview { public void process(){ System.out.println("现在进行的是" + this.getPosition() + "岗位的面试...");原创 2020-07-16 15:31:22 · 72 阅读 · 0 评论 -
设计模式-原型模式
设计模式-原型模式原创 2020-07-16 13:44:32 · 90 阅读 · 0 评论 -
设计模式-代理模式
设计模式-代理模式原创 2020-07-10 16:41:36 · 65 阅读 · 0 评论 -
设计模式-装饰模式
设计模式-装饰模式原创 2020-07-08 22:10:59 · 70 阅读 · 0 评论 -
设计模式-策略模式
设计模式-策略模式当遇到根据条件选择处理方式的情况,就可以考虑使用策略模式处理这种变化的可能性。原创 2020-07-01 22:28:02 · 136 阅读 · 0 评论 -
设计模式-工厂模式
设计模式-简单工厂模式原创 2020-06-28 23:54:25 · 82 阅读 · 0 评论