9 QQxiaoqiang1573

尚未进行身份认证

暂无相关描述

等级
博文 124
排名 1w+

设计模式之访问者模式

定义提供一个作用于某对象结构中的各元素的操作表示,它使我们可以在不改变各元素的类的前提下定义作用于这些元素的新操作。访问者模式是一种对象行为型模式。UML类图代码实现Element.javapublicinterfaceElement{publicvoidaccept(Visitorvisitor);}Visitor.javapublicabstrac...

2019-05-13 09:09:35

设计模式之模板方法模式

定义定义一个操作中算法的框架,而将一些步骤延迟到子类中。模板方法模式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。模板方法模式是一种基于继承的代码复用技术,它是一种类行为型模式。UML类图代码实现AbstractClass.javapublicabstractclassAbstractClass{publicvoidtemplateMethod...

2019-05-13 09:04:01

设计模式之策略模式

定义定义一系列算法类,将每一个算法封装起来,并让它们可以相互替换,策略模式让算法独立于使用它的客户而变化,也称为政策模式(Policy)。策略模式是一种对象行为型模式。UML类图代码实现Strategy.javapublicabstractclassStrategy{publicabstractvoidalgorithm();}Context.javap...

2019-05-13 09:02:49

设计模式之状态模式

定义允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。其别名为状态对象(ObjectsforStates),状态模式是一种对象行为型模式。UML类图代码实现State.javapublicabstractclassState{publicabstractvoidhandle();}Context.javapublicclas...

2019-05-13 09:02:04

设计模式之观察者模式

定义定义对象之间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。观察者模式的别名包括发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。观察者模式是一种对象行为型模式。UML类图代码实现Observer.javapu...

2019-05-13 09:01:01

设计模式之备忘录模式

定义在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。它是一种对象行为型模式,其别名为Token。UML类图代码实现Originator.javapublicclassOriginator{privateStringstate;publicStringgetState(){...

2019-05-11 10:09:15

设计模式之中介者模式

定义用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。UML类图代码实现Mediator.javapublicabstractclassMediator{protectedArrayList<Colleague>l...

2019-05-11 10:07:14

设计模式之迭代器模式

定义提供一种方法来访问聚合对象,而不用暴露这个对象的内部表示,其别名为游标(Cursor)。迭代器模式是一种对象行为型模式。UML类图代码实现Iterator.javapublicinterfaceIterator{publicvoidfirst();publicvoidnext();publicbooleanhasNext();...

2019-05-11 10:04:11

设计模式之解释器模式

定义定义一个语言的文法,并且建立一个解释器来解释该语言中的句子,这里的“语言”是指使用规定格式和语法的代码。解释器模式是一种类行为型模式。UML类图代码实现Context.javapublicclassContext{privateArrayDeque<String>map=newArrayDeque<>();public...

2019-05-11 10:02:03

设计模式之命令模式

定义将一个请求封装为一个对象,从而让我们可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是一种对象行为型模式,其别名为动作(Action)模式或事务(Transaction)模式。UML类图代码实现Command.javapublicabstractclassCommand{publicabstractvoidexec...

2019-05-11 09:59:05

设计模式之职责链模式

定义避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。职责链模式是一种对象行为型模式。UML类图代码实现Handler.javapublicabstractclassHandler{protectedHandlersuccessor;publicvoidsetSucc...

2019-05-11 09:55:40

设计模式之代理模式

定义给某一个对象提供一个代理或占位符,并由代理对象来控制对原对象的访问。代理模式是一种对象结构型模式。在代理模式中引入了一个新的代理对象,代理对象在客户端对象和目标对象之间起到中介的作用,它去掉客户不能看到的内容和服务或者增添客户需要的额外的新服务。远程代理(RemoteProxy):一种常用的代理模式,它使得客户端程序可以访问在远程主机上的对象,远程主机可能具有更好的计算性能与处理速度,...

2019-05-11 09:49:37

设计模式之享元模式

定义运用共享技术有效地支持大量细粒度对象的复用。系统只使用少量的对象,而这些对象都很相似,状态变化很小,可以实现对象的多次复用。由于享元模式要求能够共享的对象必须是细粒度对象,因此它又称为轻量级模式,它是一种对象结构型模式。UML类图代码实现Flyweight.javapublicclassFlyweight{privateStringintrinsicState...

2019-05-11 09:46:29

设计模式之外观模式

定义为子系统中的一组接口提供一个统一的入口。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。外观模式又称为门面模式,它是一种对象结构型模式。外观模式是迪米特法则的一种具体实现,通过引入一个新的外观角色可以降低原有系统的复杂度,同时降低客户类与子系统的耦合度。外观模式中所指的子系统是一个广义的概念,它可以是一个类、一个功能模块、系统的一个组成部分或者一个完整的系统。子系统类通常...

2019-05-11 09:43:06

设计模式之装饰模式

定义动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现更为灵活。装饰模式是一种对象结构型模式。UML类图代码实现Component.javapublicabstractclassComponent{publicabstractvoidoperation();}Decorator.javapublicclassDecora...

2019-05-11 09:39:32

设计模式之组合模式

定义组合多个对象形成树形结构以表示具有“整体—部分”关系的层次结构。组合模式对单个对象(即叶子对象)和组合对象(即容器对象)的使用具有一致性,组合模式又可以称为“整体—部分”(Part-Whole)模式,它是一种对象结构型模式。UML类图代码实现Component.javapublicabstractclassComponent{publicabstractvoi...

2019-05-10 15:03:11

设计模式之桥接模式

定义将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(HandleandBody)模式或接口(Interface)模式。UML类图代码实现Abstraction.javapublicabstractclassAbstraction{protectedImplementorimpl;publicvoids...

2019-05-10 14:52:35

设计模式之适配器模式

定义将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。根据适配器类与适配者类的关系不同,适配器模式可分为对象适配器和类适配器两种,在对象适配器模式中,适配器与适配者之间是关联关系;在类适配器模式中,适配器与适配者之间是继承(或实现)关系。在实际开发中,对象适配器的使用频率更高,...

2019-05-10 14:43:15

设计模式之建造者模式

定义将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一种对象创建型模式。UML类图代码实现Product.javapublicclassProduct{privateStringpartA;privateStringpartB;privateStringpartC;publicStrin...

2019-05-10 14:29:21

设计模式之原型模式

定义将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝自己来实现创建过程。由于在软件系统中我们经常会遇到需要创建多个相同或者相似对象的情况,因此原型模式在真实开发中的使用频率还是非常高的。原型模式是一种“另类”的创建型模式,创建克隆对象的工厂就是原型类自身,工厂方法由克隆方法来实现。浅拷贝在浅克隆中,如果原型对象的成员变量是值类型,将复制一份给克隆对象;如果原型...

2019-05-10 14:23:14
奖章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。