结合例子理解适配器模式
适配器模式:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
书本上给出了一个很好的例子:NBA里面,姚明是一个外籍中锋,他和其他成员的语言不通,那么他就需要翻译者来“适配”他,最终使得他能够很其他的成员一起打球(这里讲到的主要是对象适配器)
模式中的成员:
目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。
需要适配的类(Adaptee):需要适配的类或适配者类。
适配器(Adapter):通过包装一个需要适配的对象,把原接口转换成目标接口。
例子中的成员:
球员—Target:具有同一种语言的球员
翻译者-Adapter:将外籍中锋的语言进行翻译,使得外籍中锋能够理解球员类的语言
外籍中锋-Adaptee:和球员们的语言不同,需要翻译者

图中可以看出每个球员都可以接受教练的两个命令,但是外籍中锋能够理解的语言和其他的球员不同,所以需要翻译者的翻译
代码