- 1
- 0
- 约1.33万字
- 约 84页
- 2017-07-05 发布于湖北
- 举报
* * * * * * * * * * * * * * */82 如图所示,客户对象(Client)向一个作为接口的Subject发出请求,Subject接口的实施代理对象Proxy根据请求的种类,在适当的时候向RealSubject转发请求。 代理模式的参与者如下: 客户对象(Client):向一个作为接口的Subject发出请求。 代理对象(Proxy):保存一个引用使其可以访问实体。 抽象类(Subject):定义实体目标对象RealSubject和代理对象Proxy的共用接口,这样就允许在任何使用RealSubject的地方都可以使用Proxy。 实体目标对象(RealSubject):定义代理对象Proxy所代表的实体。 */82 5.适配器模式 适配器(Adapter)模式又叫包装(Wrapper)模式,指把一个类的接口变换成客户端所期待的另一种接口,从而使原本接口不匹配而无法在一起工作的两个类能够在一起工作。 适配器模式有类适配器和对象适配器两种。类适配器使用多重继承使一个接口与另一个接口进行匹配,类适配器模式如下图所示。由图可看出,类Adaptee类没有request方法,而客户期待这个方法。为了是客户能够使用Adaptee类,提供一个中间环节,即Adapter类,Adapter类实现了Target接口,并继承自Adaptee类,Adapter类的Request方法重新封装了Adaptee的specificRequest方法,实现了适配的目的。因为Adapter和Adaptee是继承关系,所以决定了这个适配器模式是类的。类适配器模式所涉及的参与者包括: 目标(Target):客户端所期待的接口。 源(Adaptee):需要适配的类。 适配器(Adapter):把源接口转换成目标接口,它必须是类。 */82 类适配器模式 */82 对象适配器依赖于对象组合,如下图所示。 从图中可以看出:客户端需要调用request方法,而Adaptee没有该方法,为了使客户端能够使用Adaptee类,需要提供一个包装(Wrapper)类Adapter。这个类包装了一个Adaptee类的实例,从而将客户端与Adaptee衔接起来。由于Adapter与Adaptee是委派关系,从而决定了这个适配器模式是对象的。该适配器模式所涉及的参与者包括: 目标(Target):客户所期待的接口。 源(Adaptee):是需要适配的类。 适配器(Adapter):通过内部包装一个Adapter对象,把源接口转换成目标接口。 */82 对象适配器模式 */82 10.3 设计模式 四、行为型设计模式 1.调停者模式 通常,面向对象应用程序是由一组为了提供某种服务而彼此交互的对象组成,这组对象叫同事对象。当彼此引用的对象数量比较少时,此时对象之间就为直接交互。当对象的数量增加时,这种直接交互会导致对象之间复杂的、混乱的引用。这就会影响应用程序的可维护性。同时,因为对象之间的高耦合,当一个对象直接引用其他的对象时,缩小了这些对象的复用范围。 调停者模式推荐抽象所有同事对象交互的细节到一个独立的类,这个类就是调停者,它负责这组对象之间的交互。这组对象中的每一个对象仍然负责提供它所具有的服务,但为了提供服务,对象之间不能直接彼此交互。两个不同对象之间的交互通过调停者进行路由。所有的对象把消息发送给调停者。调停者依据应用程序的需求把消息再发送给相应的对象。 */82 如图所示:调停者模式的参与者如下: 调停者:调停者定义一个接口用于与各同事对象进行通信 具体调停者:具体调停者通协调各同事对象实现协作行为,了解并维护它的各个同事。 同事类:同事类定义出调停者到同事对象的接口。 具体同事类:每一个具体同事类都知道它的调停者对象,在需要与其他同事通信时,仅仅与它的调停者进行通信。 */82 2.策略模式 策略模式是针对一组算法,将每一个算法(策略)封装到具有共同接口的独立类中,使得他们可以相互替换。 策略模式是对算法的包装,是将使用算法的责任和算法本身分割开,委派给不同的对象进行管理。策略模式可以把行为和环境分开。其中,环境类负责维持和查询行为类,而各种算法在具体策略类中提供。这样算法的增减和修改都不会影响环境和客户端。当出现需求变化时,只需要实现新的策略类,并在客户端登记即可。 */82 如下图所示:策略模式涉及3个参与者: 语境(Context):持有一个策略类(Strategy)的引用。可以定义一个接口让Strategy访问它的数据。 抽象策略(Strategy):通常由一个接口或抽象类实现,它给出所有的具体策略类所需要的接口。 具体策略(ConcreteStrategy):包装了相关的算法或行为,以Strategy接口实现某个具体算法。 *
您可能关注的文档
- 第四章计划介绍.ppt
- 第四章计量专业实务介绍.ppt
- 第十章几类常见食品的卫生检验介绍.ppt
- 第四章计算机网络介绍.ppt
- 第十章计数原理、概率、随机变量及其分布(理)第八节n次独立重复试验与二项分布(理)介绍.ppt
- 第四章记忆的结构介绍.ppt
- 第四章记忆结构介绍.ppt
- 第十章建设中国特色社会主义文化介绍.ppt
- 第四章-记忆结构介绍.ppt
- 第十章建筑施工测量(民用)介绍.ppt
- 2025年全国演出经纪人员资格认定考试试卷带答案(研优卷).docx
- 2025年全国演出经纪人员资格认定考试试卷完整版.docx
- 2025年全国演出经纪人员资格认定考试试题库及完整答案.docx
- 2025年全国演出经纪人员资格认定考试试卷完美版.docx
- 2025年全国演出经纪人员资格认定考试试卷含答案(实用).docx
- 2025年全国演出经纪人员资格认定考试试卷及答案(各地真题).docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
- 2025年全国演出经纪人员资格认定考试试卷及答案1套.docx
- 2025年下半年四川成都市郫都区面向社会引进公共类事业单位人员2人备考题库最新.docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
最近下载
- 《我家是动物园》教案(2025—2026学年).docx VIP
- QSY 02025-2017 油水井压裂设计规范.pdf VIP
- 《轩辕剑4全全地图超完美攻略--黑龙舞兮云飞扬(最详细的心得体会、可下载、可编辑、可复制)》.doc VIP
- 2025-2026学年湖南省长沙市浏阳市高一(上)期末数学试卷(含答案).pdf VIP
- 一种基于层次分析法与灰色模糊综合评价法的项目效益评估方法.docx VIP
- 设备自检记录(电焊机).doc VIP
- 保时捷Boxster、Boxster S_2013款_汽车使用手册用户操作图解驾驶车主车辆说明书电子版.pdf
- 2024新疆中考语文试题(附参考答案) .pdf VIP
- 颅脑体表标志与脑出血穿刺定位方法.ppt VIP
- 塑料注射成型与模具设计指南_401-450.docx VIP
原创力文档

文档评论(0)