xiangzhihong8的专栏

技术群:515980159,278792776;招聘群:188716429

中介者模式

概念中介者模式:用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使耦合松散,而且可以独立地改变它们之间的交互结构组成和类图类图: 中介者模式主要由:Mediator(中介者)、Colleague(同事类)、ConcreteMediator(实现类)组成: 抽象中...

2017-01-20 21:16:40

阅读数 1112

评论数 0

访问者模式

概念访问者模式:表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。 访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构则可以保持不变。结构组成与类图先看一下类图: 访问者模式主要...

2017-01-19 22:35:38

阅读数 1431

评论数 0

状态模式

概述状态模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。允许一个对象在其内部状态改变时改变它的行为。结构与组成先看一下类图: 状态模式主要由三部分组成:环境类Context、抽象状态类State、具体状态类ConcreteStat...

2017-01-15 22:32:03

阅读数 1427

评论数 0

备忘录模式

概念备忘录模式:又叫做快照模式,属于行为模式的一种,指在不破坏封装性的前提下,获取到一个对象的内部状态,并在对象之外记录或保存这个状态。在有需要的时候可将该对象恢复到原先保存的状态。我们相当于把对象原始状备份保留,所以叫备忘录模式。 结构与组成首先看一下备忘录模式的UML图: 备忘录模式主要...

2016-12-24 12:51:41

阅读数 2055

评论数 0

android开发中使用到的一些设计者模式

单例模式 概念:确保一个类只有一个实例,并且自行实例化并向整个系统提供整个实例。public class Singleton { private static volatile Singleton instance = null; private Singleton(){...

2016-12-24 11:19:02

阅读数 2616

评论数 0

责任链模式

概述概念:责任链模式是一种对象的行为模式。在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织和分配责任。意图...

2016-12-17 21:38:54

阅读数 1835

评论数 0

迭代子模式

概述概念:在阎宏博士的《JAVA与模式》中关于迭代子模式的定义是这样的:迭代子模式又叫游标(Cursor)模式,是对象的行为模式。迭代子模式可以顺序地访问一个聚集中的元素而不必暴露聚集的内部表象(internal representation)。迭代子模式的意图及组成迭代子模式有两种实现方式,分别...

2016-12-15 21:52:02

阅读数 1141

评论数 0

模板方法模式

概述概念:定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法中的某些特定步骤。模板方法模式属于行为类模式。模板方法的组成类图: 如图所示,模板方法模式主要由AbstractClass(抽象类)和ConcreteClass(具体子类)组成。 Ab...

2016-12-13 22:13:49

阅读数 1266

评论数 1

桥接模式

概述当一个抽象对象可能有多个 实现时,通常用继承来协调他们。抽象类定义对该抽象的接口,而具体的子类则用不同的方式来实现。但是此方法有时候不太灵活。继承机制将抽象部分与它的实现部分固定在一起,是的难以对抽象和实现部分单独出来进行修改、扩充和重用。那么我们有没有方法将抽象部分和行为部分各自独立开来你呢...

2016-12-03 23:20:53

阅读数 1153

评论数 0

享元模式

享元模式如果在一个系统中存在多个相同的对象,那么只需共享一份对象的拷贝,而不必为每一次使用都创建新的对象。这里可以看出,享元模式是对象的结构模式。享元模式以共享的方式高效地支持大量的细粒度对象。概述享元模式采用一个共享来避免大量拥有相同内容对象的开销。这种开销最常见、最直观的就是内存的损耗。享元对...

2016-11-21 16:50:34

阅读数 1512

评论数 0

装饰者模式

装饰器模式动态地给一个对象添加一些额外的职责,装饰器模式就是基于对象组合的方式,可以很灵活的给对象添加所需要的功能。装饰器模式的本质就是动态组合。装饰器模式意图和结构装饰者模式提供了一种给类增加功能的方法,它通过动态组合可以给原有的代码新增加新的代码,达到修改现有代码的目的,因此我们可以用在修复b...

2016-11-12 23:35:25

阅读数 1620

评论数 0

外观模式

外观模式为子系统中的一组接口提供一个统一接口。Facade模式定义了一个高层接口,这个接口使得这子系统更容易使用。概述实际应用中,我们在对付一些老旧的code(尤其是将C的代码转成C++代码)或者即便不是老旧code,但涉及多个子系统时,除了重写全部代码(对于老旧code而言),我们还可能采用这样...

2016-11-04 23:22:55

阅读数 1761

评论数 0

原型模式

概念: 是一种创建型设计模式,它通过复制一个已经存在的实例来返回新的实例,而不是新建实例。被复制的实例就是我们所称的原型。原型模式的拷贝:分为"浅拷贝"和"深拷贝"。(这个和我们理解的拷贝是一样的)浅拷贝: 对值类型的成员变量进行值的复制,对引用类型的成员变...

2016-10-30 22:03:49

阅读数 1251

评论数 0

解释器模式

解释器模式:解释器模式是类的行为模式。给定一个语言之后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器。客户端可以使用这个解释器来解释这个语言中的句子。组成模式所涉及到4个角色:抽象表达式(Expression)角色:声明一个所有的具体表达式角色都需要实现的抽象接口。这个接口主要是一个...

2016-10-23 19:39:19

阅读数 1379

评论数 0

策略模式

策略(Strategy)模式策略模式属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。概述策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理。策略模式...

2016-10-23 10:39:50

阅读数 1278

评论数 0

建造者模式

概念: 将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。 [构建与表示分离,同构建不同表示]与工厂模式的区别:在建造者模式里,有个指导者,由指导者来管理建造者,用户是与指导者联系的,指导者联系建造者最后得到产品。即建造模式可以强制实行一种分步骤进行的建造过程。建造模式是将复杂...

2016-10-12 15:24:28

阅读数 1602

评论数 0

命令模式

命令模式定义将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。作用命令模式主要应用于将行为调用者与实现者解耦。讲发出请求和执行对象分开来。例如:比如我们以前惯用的写代码的方式是LogicProcess logic = new Logi...

2016-09-07 22:21:15

阅读数 1410

评论数 0

迭代器模式

迭代器模式(Iterator): 提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。用途:在软件构建过程中,集合对象内部结构常常变化各异。但对于这些集合对象,我们希望在不暴露其内部结构的同时,可以让外部客户代码透明地访问其中包含的元素;同时这种“透明遍历”也为“ 同一种算法在多...

2016-09-03 10:54:14

阅读数 1066

评论数 0

单例模式

单例对象(Singleton)是一种常用的设计模式。在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在。 这样的模式有几个好处: 1、某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销。 2、省去了new操作符,降低了系统内存的使用频率,减轻GC压力。...

2016-08-28 13:56:28

阅读数 1757

评论数 0

组合模式

组合模式 组合模式(Composite Pattern)有时候又叫做部分-整体模式,允许你将对象组合成树形结构来表现“整体/部分”层次结构。组合能让客户以一致的方式处理个别对象以及对象组合。 根据《设计模式》定义:将对象组合成树形结构以表示“部分整体”的层次结构。组合模式使得用户对单个对象和使用...

2016-08-24 21:58:37

阅读数 1782

评论数 1

提示
确定要删除当前文章?
取消 删除