您的位置:首页 > 其它

设计模式(接口隔离)——适配器模式

2017-06-22 11:07 190 查看
适配器模式:将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作。适配器让原本接口不兼容的类可以合作无间。

场景还原(电源适配器):

买笔记本电脑,买手机时,都有一个电源适配器,电源适配器又叫外置电源,是小型便携式电子设备及电子电器的供电电压变换设备,常见于手机,笔记本电脑上。它的作用是将家里的220V高电压转换成这些电子产品能工作的5V~20V左右稳定的低电压,使它们能正常工作。就是说,如果没有这个电源适配器,我们的手机和电脑就不能进行充电了。

之前同事去日本出差,由于工作需要,就将自己的笔记本带过去了。到了的当晚就悲剧了,笔记本无法使用。由于日本的居民用电电压是110V,而中国是220V,同事的笔记本是220V供电的。第二天,同事就去买了一个电压适配器。如果没有电压适配器,估计这次出差都要悲剧了。

UML类图阐述:

1)类适配器

适配器Aadapter继承自Target类和Adaptee类,Adapter类需要重写Target类的Request函数,在Request中做适当的处理,调用Adaptee类的SepcificRequest。最终,Target实际调用的是Adaptee的SpecificRequest来完成Request的,完成适配。



2)对象适配器

适配器Adapter类继承自Target类,同时,在Adapter类中有一个Adaptee类型的成员变量;Adapter类重写Request函数时,在Request中,使用Adaptee类型的成员变量调用Adaptee的SpecificRequest函数,最终完成适配。



模式结构:

Target:目标抽象类

Adapter:适配器类

Adaptee:适配者类

Client:客户类

更多C++示例代码,请移步到本人的github。

设计模式,祝愿你把代码写成艺术。

6/22/2017 11:06:05 AM
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: