一、适配器模式
将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。适配就是由“源”到“目标”的适配,而当中链接两者的关系就是适配器。它负责把“源”过度到“目标”。
注:适配器模式有两种类型,类适配器模式和对象适配器模式。由于类适配器模式通过多重继承对一个接口与另一个接口进行匹配,而C#、java等语言都不支持多重继承,所以这里只是介绍对象适配器。
二、适配器UML图
1.适配器模式角色职责:
1) 目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。
2)需要适配的类(Adaptee):需要适配的类或适配者类。
3)适配器(Adapter):通过包装一个需要适配的对象,把原接口转换成目标接口。
2.UML图:
讲解这个时机模式时,我以大家熟悉的笔记本电源适配器为例。在中国民用的交流电为220V,而在日本民用的交流电为110V。为了使笔记本电脑在中国和日本都能正常工作,我们给笔记本配不同的电源适配器即可解决此问题。
三、代码实现
1.Adapter接口定义:
2.Adaptee接口定义:
3.PowerAdapter 类实现:
4 Adaptee类实现:
5.客户端测试: