将一个接口转换成为想要的的另一个接口,适配器模式使接口不兼容的哪些类可以一起工作。
目标抽象类(Target):定义客户要用的特定领域的接口。
适配器(公共接口)(Adapt):调用另一个接口,作为一个转换器。
适配器(母接口)(Adapt)定义一个接口,Adapter需要接入。
客户类(Client):协同对象符合Adapt适配器(公共接口)。
范例:1.电脑的电源,跟电源线,现在电脑的电源看成时母接口,电源线看成公共接口。
2.我们从第三方买来了一些类,控件,但是我们不能修改这些类,这些类就成了母接口,这时使用适配器模式,就可以实现对象的相互之间交互,一起工作。
优势和缺陷:适配器模式可以将一个类的接口跟另一个类的接口匹配起来,使用的前提是我们无法改变或不能改变母接口。
应用情景:
1. 对象需要利用现存的并且接口不兼容的类
2. 你需要创建可重用的类以写作其他接口不一定兼容的类。
3. 你需要使用若干个选村的子类但有不想派生这些子类的每一个接口。