1 适配器模式原理
适配器模式是一种结构型设计模式, 它能使接口不兼容的对象能够相互合作。适配器有助于采用不同接口的对象之间的合作。 适配器模式属于结构型模式,主要分为三类:类适配器模式、对象适配器模式、接口适配器模式。
2 类适配器
这一实现使用了继承机制: 适配器同时继承两个对象的接口。基本介绍:(适配器)Adapter 类通过继承 src 类、实现 dst 接口,完成
src->dst。
以生活中充电器为例来讲解适配器:充电器本身相当于 Adapter,220V 交流电相当于 src (被适配者),dst(目标)是 5V 直流电。
Java 是单继承机制,类适配器需要继承 src 类,这要求 dst 必须是接口,有一定局限性;src 类的方法在 Adapter 中都会暴露出来,也增加了使用的成本;由于其继承了 src 类,所以它可以根据需求重写 src 类的方法,使得 Adapter 的灵活性增强了。
3 对象适配器
根据“合成复用原则”,在系统中尽量使用关联关系(聚合)来替代继承关系,对象适配器模式是适配器模式常用的一种。
4 接口适配器
当不需要全部实现接口提供的方法时,可先设计一个抽象类实现接口,并为该接口中每个方法提供一个默认实现(空方法),那么该抽象类的子类可有选择地覆盖父类的某些方法来实现需求。适用于一个接口不想使用其所有的方法的情况。