![](https://img-blog.csdnimg.cn/20210305193838840.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
设计模式
文章平均质量分 59
学习设计模式,学习源码设计
诺依曼爱图灵
这个作者很懒,什么都没留下…
展开
-
设计模式之建造者模式
文章目录建造者模式定义建造者模式中出现的角色定义产品类bulilder抽象构建者ConcreteBuilder具体建造者Director类代码实现建造者模式使用场景 建造者模式定义 建造者模式就是将一个复杂对象的构建(同一类的不同实现)在客户端隐藏起来实现细节,可以使得同样的构建过程可以创建不同的表示。 建造者模式中出现的角色定义 产品类 我们想要构建的产品,每种产品都有自己的实现细。 bulilder抽象构建者 构造我们上面提到的同一产品类不同实现 ConcreteBuilder具体建造者 实现抽象类定义原创 2021-03-24 15:02:21 · 68 阅读 · 0 评论 -
设计模式之观察者模式
文章目录观察者模式定义:观察者模式中出现的角色:被观察者代码实现观察者代码实现ConcreteSubject(具体的被观察者)代码实现ConcreteObserver具体的观察者观察者模式的优劣观察者模式应用观察者模式应该考虑的问题 观察者模式定义: 观察者模式(Observer Pattern) 也叫做发布订阅模式,定义对象间一种一对多的依赖关系, 使得每 当一个对象改变状态, 则所有订阅它的对象都会得到通知消息。 观察者模式中出现的角色: 被观察者 一般是抽象类 或者是实现类, 仅仅完成作为被观察者必须原创 2021-03-23 23:06:20 · 58 阅读 · 0 评论 -
设计模式之迭代器模式
文章目录迭代器模式的定义迭代器中定义的对象Iterator抽象迭代器ConcreteIterator实现上面的抽象迭代器Aggregate抽象容器Concrete Aggregate具体容器代码实现 迭代器模式的定义 它提供一种方法访问一个容器对象中各个元素, 而又不需暴露该对象的内部细节。注意这里的设计模式需要关注的重点是如何创建一个迭代器,还有我们使用的集合对象是定义在哪里?。 迭代器中定义的对象 Iterator抽象迭代器 负责定义访问和遍历元素的接口,基本上是有固定的3个方法: first()获得第原创 2021-03-22 18:02:52 · 64 阅读 · 0 评论 -
设计模式之策略模式
文章目录策略模式定义:代码实现基本策略接口:具体策略:屏蔽具体算法的实现类客户端调用:策略模式缺点 策略模式定义: 定义一组算法, 将每个算法都封装起来, 并且使它们之间可以互换。 代码实现 基本策略接口: public interface Strategy { //策略模式的运算法则 public void doSomething(); } 具体策略: public class ConcreteStrategy1 implements Strategy { public void doSomething原创 2021-03-19 21:12:24 · 47 阅读 · 0 评论 -
设计模式之装饰模式
文章目录装饰模式简介:装饰模式中出现的角色Component抽象构件ComponentConcreteComponentDecorator具体装饰角色具体实现用例执行结果:调用链分析装饰模式使用场景: 装饰模式简介: 装饰模式就是动态地给一个对象添加一些额外的职责,在一个类的基础上,在不改变原有类的情况下,在外部对类的功能进行扩展。 装饰模式中出现的角色 Component抽象构件 Component 是一个接口或者是抽象类, 就是我们定义我们最核心的对象。 ConcreteComponent Concre原创 2021-03-18 22:49:52 · 65 阅读 · 0 评论 -
设计模式之责任链模式
文章目录责任链模式简介责任链模式中出现的角色抽象处理者具体的处理者client端源代码实现抽象处理者伪代码具体处理者伪代码客户端伪代码 责任链模式简介 简单解释说就是将客户端发来的请求,交给一个处理者进行处理,而这个处理者是否具有处理能力客户端是不需要关注的,如果这个处理者没有处理能力,那么它会将客户端请求,发送给它所知道的下沿处理者,而请求的传递过程,对于客户端来说是透明的,知道请求被处理,然后返回,如果没有相应的处理者,则返回错误。 总结上面所说的就是,责任链模式使多个对象都有机会处理请求, 从而避免了原创 2021-03-16 23:31:31 · 69 阅读 · 0 评论 -
初识单例模式
文章目录单例模式简介单例模式通用代码单例模式优点:单例模式缺点单例模式的使用场景 单例模式简介 Ensure a class has only one instance, and provide a global point of access to it. 确保每一个类只有一个实例,并且提供一个全局指针能够访问这个实例。 单例模式通用代码 // 饿汉式单例 public class Singleton{ // 自行实例化 private static Singleton singleton =new Si原创 2021-03-05 20:32:48 · 58 阅读 · 0 评论