background image

单例模式:单例模式确保某一个类只有一个实例,而且自行实例化并向

整个系统提供这个实例单例模式。单例模式只应在有真正的 单一实例 的
需求时才可使用。

结构型模式

6、ADAPTER—在朋友聚会上碰到了一个美女 Sarah,从香港来的,可我不会
说粤语,她不会说普通话,只好求助于我的朋友

kent 了,他作为我和 Sarah

之间的

Adapter,让我和 Sarah 可以相互交谈了(也不知道他会不会耍我)

适配器(变压器)模式:把一个类的接口变换成客户端所期待的另一种
接口,从而使原本因接口原因不匹配而无法一起工作的两个类能够一起
工作。适配类可以根据参数返还一个合适的实例给客户端。

7、BRIDGE—早上碰到 MM,要说早上好,晚上碰到 MM,要说晚上好;碰到
MM 穿了件新衣服,要说你的衣服好漂亮哦,碰到 MM 新做的发型,要说你的

头发好漂亮哦。不要问我 早上碰到

MM

新做了个发型怎么说 这种问题,自己

BRIDGE 组合一下不就行了

桥梁模式:将抽象化与实现化脱耦,使得二者可以独立的变化,也就是
说将他们之间的强关联变成弱关联,也就是指在一个软件系统的抽象化
和实现化之间使用组合

/聚合关系而不是继承关系,从而使两者可以独立

的变化。

8、COMPOSITE—Mary

”“

今天过生日。 我过生日,你要送我一件礼物。 嗯,好

”“

吧,去商店,你自己挑。 这件

T

 

恤挺漂亮,买,这条裙子 好看,买,这个包

”“

”“

也不错,买。 喂,买了三件了呀,我只答应送一件礼物的哦。 什么呀,

T 恤

 

”“……”

加裙子加包包,正好配成一套呀,小姐,麻烦你包起 来。

MM 都会用

Composite 模式了,你会了没有?

合成模式:合成模式将对象组织到树结构中,可以用来描述整体与部分
的关系。合成模式就是一个处理对象的树结构的模式。合成模式把部分与
整体的关系用树结构表示出来。合成模式使得客户端把一个个单独的成分
对象和由他们复合而成的合成对象同等看待。

9、DECORATOR—Mary 过完轮到 Sarly 过生日,还是不要叫她自己挑了,不

 

然这个月伙食费肯定玩完,拿出我去年在华山顶上照的照片,在 背面写上 最
好的的礼物,就是爱你的

Fita”,再到街上礼品店买了个像框(卖礼品的 MM

也很漂亮哦),再找隔壁搞美术设计的

Mike

 

设计了一个漂亮的盒 子装起来

…,我们都是 Decorator,最终都在修饰我这个人呀,怎么样,看懂了吗?

装饰模式:装饰模式以对客户端透明的方式扩展对象的功能,是继承关
系的一个替代方案,提供比继承更多的灵活性。动态给一个对象增加功能