设计模式-结构型01-适配器
2014-01-02 22:14
253 查看
一,结构型模式
描叙如何将类或对象结合在一起形成更大的结构。
结构模式可以描叙两种不同的东西:
1,类结构型。关心类的组合,由多个类可以组成更大的系统,一般只存在继承和实现关系。
2,对象结构型。关心类与对象的组合,通过关联关系使得在一个类中定义另一个对象类的实例。
二,动机
在现实生活中,经常存在一些不兼容的事物。最常见的是电源适配器。例如手机充电需要的电压大概是4.2伏特,但是国家电网提供的都是220伏特的电压。为了能兼容,我们引入了变压器,也就是适配器来解决这个问题。
三,定义
将一个接口转化成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作。
四,模式结构
类适配器:
对象适配器:
1,Target(目标类)
客户需要的接口类。
2,Adapter(适配器类)
适配器类可以调用另一个接口,作为一个转换器。
3,Adaptee(适配者类)
即被适配的类,它定义了一个已经存在的接口,这个接口需要适配。
五,实例代码
类适配器:
不同于类适配器的是,
六,拓展
双向适配器
狼和羊的爱情故事--双向适配器
描叙如何将类或对象结合在一起形成更大的结构。
结构模式可以描叙两种不同的东西:
1,类结构型。关心类的组合,由多个类可以组成更大的系统,一般只存在继承和实现关系。
2,对象结构型。关心类与对象的组合,通过关联关系使得在一个类中定义另一个对象类的实例。
二,动机
在现实生活中,经常存在一些不兼容的事物。最常见的是电源适配器。例如手机充电需要的电压大概是4.2伏特,但是国家电网提供的都是220伏特的电压。为了能兼容,我们引入了变压器,也就是适配器来解决这个问题。
三,定义
将一个接口转化成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作。
四,模式结构
类适配器:
对象适配器:
1,Target(目标类)
客户需要的接口类。
2,Adapter(适配器类)
适配器类可以调用另一个接口,作为一个转换器。
3,Adaptee(适配者类)
即被适配的类,它定义了一个已经存在的接口,这个接口需要适配。
五,实例代码
类适配器:
#include <iostream> using namespace std; class Robot { public: virtual void Say() = 0; virtual void Dance() = 0; }; class Cat { public: void Bark() { cout<<"喵..喵"<<endl; } void run() { cout<<"咚..咚"<<endl ; } }; class RobotCat1:public Robot,Cat { public: void Say() { cout<<"大雄你好:"<<endl; Bark(); } void Dance() { cout<<"俺给你来段肚皮舞"<<endl; run(); } }; int main() { Robot* test_cat = new RobotCat1(); test_cat->Say(); cout<<"-------------------------------"<<endl; test_cat->Dance(); return 0; }对象适配器:
不同于类适配器的是,
class RobotCat2:public Robot { private: Cat cat; public: void Say() { cout<<"大雄你好:"<<endl; cat.Bark(); } void Dance() { cout<<"俺给你来段肚皮舞"<<endl; cat.run(); } };
六,拓展
双向适配器
狼和羊的爱情故事--双向适配器
相关文章推荐
- Java结构型设计模式-适配器(一)
- 【结构型模式】适配器(adapter)模式之23种java设计模式
- [设计模式-结构型]适配器(Adapter)
- 设计模式之结构型模式(适配器、桥接、外观、代理、享元、组合、装饰)
- 设计模式11:对象适配器【结构型】
- [设计模式-结构型]适配器(Adapter)
- 设计模式之适配器(Adapter)---类对象结构型模式
- OOAD-设计模式(四)结构型模式之适配器、装饰器、代理模式
- 设计模式12:类适配器【结构型】
- 设计模式-结构型-适配器
- 设计模式-结构型模式-适配器
- 设计模式之九:Adapter(适配器)—类对象结构型模式
- Java设计模式5-结构型-适配器模式
- OOAD-设计模式(四)结构型模式之适配器、装饰器、代理模式
- 【设计模式基础】结构型模式 - 1 - 适配器(Adapter)
- 设计模式(九)适配器(结构型)
- "围观"设计模式(30)--结构型设计模式总结(适配器、代理、装饰、外观、桥梁、组合、享元)
- 设计模式七:Adapter(适配器)——类对象结构型模式
- 从FLC中学习的设计模式系列-结构型模式(1)-适配器
- 设计模式笔记--结构型模式之一适配器 adapter