我跑我跑我跑
网上的原文如下:
6、ADAPTER—在朋友聚会上碰到了一个美女Sarah,从香港来的,可我不会说粤语,她不会说普通话,只好求助于我的朋友kent了,他作为我和Sarah之间的Adapter,让我和Sarah可以相互交谈了(也不知道他会不会耍我)。
适配器(变压器)模式:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口原因不匹配而无法一起工作的两个类能够一起工作。适配类可以根据参数返还一个合适的实例给客户端。
点评:
我是client,Sarah是Target,Kent是Adaptee,我就是Adaptee了。Sarah的话通过实际上在Adapter类中被Kent的话所替换掉了,所以client听到的话都是来自Kent的,而我能够听懂Kent的话。
这个比喻还是很不错的哦,因为就目前的情况来说,我听不懂Sarah的话,我不能直接调用她的话,所以我只能通过多加一个类,也就是Adapter类来覆盖掉Sarah的话,使之用Kent的话来替代。
这个模式也还是比较简单的,主要就是一个覆盖的概念,子类覆盖了父类的实现。恩。Over。