![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 77
半缘码君
啊哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
展开
-
设计模式之迭代器模式
模式定义:迭代器模式提供一种方法顺序访问一个聚合对象中的各个元素,而不是暴露其内部的表示迭代器模式把在元素之间游走的责任交给迭代器,而不是聚合对象模式结构:模式实现:public class IteratorMode { /** * 测试类 */ @Test public v原创 2017-04-28 14:58:21 · 310 阅读 · 0 评论 -
设计模式之Build模式
模式定义:将一个复杂对象的构建与他的表示分离,即允许用户不知道内部构建细节的情况下,可以精确的控制对象的构建流程。模式结构:略模式实现:public class BuildModel { @Test public void testBuildModel() { Build build = ne原创 2018-01-08 16:08:18 · 399 阅读 · 0 评论 -
设计模式之模板方法模式
模式定义:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤模式结构:子类继承抽象父类.png(手动滑稽)模式实现:public class Template { /** * 玩lol */ abstract原创 2017-04-27 18:03:56 · 217 阅读 · 0 评论 -
设计模式之外观模式
模式定义:外观模式提供一个统一的接口,用来访问子系统中的一群接口。外观模式定义了一个高层接口,让子系统更容易使用。模式结构:模式实现:public class FacadeMode { /** * 刷牙 */ class Brush { public void brus原创 2017-04-27 16:23:39 · 245 阅读 · 0 评论 -
设计模式之适配器模式
模式定义: 适配器模式就是将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间模式结构:模式实现:public class AdapterMode { /** * 羊肉类 */ interface IMutton { void hav原创 2017-04-27 15:51:29 · 253 阅读 · 0 评论 -
设计模式之命令模式
模式定义: 命令模式将请求封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式支持可撤销的操作。 命令模式可以对发送者额接受者完全解耦,发送者也接收者之间并没有直接的联系,发送者只需要知道如何发送请求,不需要关心请求是如何完成了。这就是命令模式,命令模式将方法调用给封装起来了。模式结构:原创 2017-04-26 18:12:42 · 216 阅读 · 0 评论 -
设计模式之装饰者模式
模式定义:动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更加有弹性的替代方案。模式结构:模式实现:public class DecorationMode { /** * 基类 */ abstract class Human { public String name;原创 2017-04-26 15:02:34 · 219 阅读 · 0 评论 -
设计模式之策略模式
模式定义:定义了算法族,分别封装起来,让他们之前可以互相转换,此模式然该算法的变化独立于使用算法的客户。模式结构:模式实现:public class Strategy { /** * 抽象交通工具类 */ abstract class Vehicle { /** * 名称 */原创 2017-04-25 12:06:35 · 346 阅读 · 0 评论 -
设计模式之单例模式
模式定义:确保某一个类只有一个实例,并且提供一个全局访问点模式结构:略模式实现:这里介绍三种实现方式,分别是DCL(双重检查锁定),静态内部类,枚举。DCL:public class Singleton { //通过volatile关键字来确保安全 private volatile static Singleton singleton原创 2017-04-25 14:42:27 · 217 阅读 · 0 评论 -
设计模式之工厂模式
工厂模式主要为创建对象提接口,主要分为三种:简单工厂模式、工厂方法模式、抽象工厂模式。一、简单工厂模式模式定义:简单工厂模式又称之为静态工厂方法,属于创建型模式。在简单工厂模式中,可以根据传递的参数不同,返回不同类的实例。简单工厂模式定义了一个类,这个类专门用于创建其他类的实例,这些被创建的类都有一个共同的父类。模式结构:模式实现:pub原创 2017-04-25 15:51:46 · 278 阅读 · 0 评论 -
设计模式之观察者模式
模式定义: 观察者模式定义了对象之间的一对多依赖关系,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并且自动更新。 在这里,发生改变的对象称之为观察目标,而被通知的对象称之为观察者。一个观察目标可以对应多个观察者,而且这些观察者之间没有相互联系,所以么可以根据需要增加和删除观察者,使得系统更易于扩展。 观察者模式又称为发布-订原创 2017-04-26 11:20:00 · 253 阅读 · 0 评论 -
设计模式之代理模式
模式定义:代理模式就是给一个对象提供一个代理,并由代理对象控制对原对象的引用模式结构:代码模式.png不画图了,就是 一个接口,两个实现A,B。A是代理证,B是真正实现,,A内有一个B的引用。在调用A时,其实是调用B。和适配器模式差不多,只不过这个父类相同。模式实现:public class ProxyPattern原创 2017-05-17 11:56:26 · 266 阅读 · 0 评论 -
设计模式之状态模式
模式定义:所谓状态模式就是允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类模式结构:模式实现:public class StatePattern { @Test public void testState() { Fish fish = new Fish();原创 2017-05-16 11:17:08 · 232 阅读 · 0 评论 -
设计模式之组合模式
模式定义:组合模式组合多个对象形成树形结构以表示“整体-部分”的结构层次。在使用组合模式中需要注意一点也是组合模式最关键的地方:叶子对象和组合对象实现相同的接口。这就是组合模式能够将叶子节点和对象节点进行一致处理的原因。模式结构:模式实现:public class CompositeMode { /**原创 2017-04-28 16:04:53 · 304 阅读 · 0 评论 -
设计模式之责任链模式
模式定义:使多个对象都有机会处理请求,避免发送者与接受者直接的耦合关系。模式结构:抽象接收者类,由一些方法以及 另一个抽象接受者类 组成。模式实现:public class IteratorPatternModel { @Test public void testMain() { Leader gro原创 2018-01-08 16:23:18 · 193 阅读 · 0 评论