适配器模式
适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁,它结合了两个独立接口的功能。适配器将一个接口的实现,转换成兼容另外一个实现的接口功能
场景:通过一个适配器Adaper,将一个老的OldOutput电流接口实现的220V输出,转换成新的TargetOutput电流接口实现的110V输出
输出220V的电流接口和实现
/** * 老的输出220V的接口 * @author test11 */ public interface OldOutput { /** * 220V输出接口 */ public void output220V(); }
/** * 原有输出220V电流的插头 * @author test11 */ public class Power implements OldOutput{ /** * 220V的输出 */ @Override public void output220V() { System.out.println("输出220V"); } }
适配器:通过实现新的目标输出接口,同时继承老的实现,通过调用父类老的实现,在新的接口中转换成新的实现
/** * 目标输出电流接口 * @author test11 */ public interface TargetOutput { /** * 将原有电流转化成110V的输出 */ public void change110V(); }
/** * 适配器 * 通过实现新的目标输出接口,同时继承老的实现,通过调用父类老的实现,在新的接口中转换成新的实现 * 将220V的电源转化成110V的输出 * @author test11 */ public class Adapter extends Power implements TargetOutput{ @Override public void change110V() { this.output220V(); System.out.println("转化成110V"); } }
用户使用适配器实现110V的电流输出
/** * 验证类适配器模式 * @author test11 */ public class Demo { public static void main(String[] args) { TargetOutput adapter = new Adapter(); adapter.change110V(); } }