适配器模式
将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作
实现:
定义一个适配器类来实现当前系统的业务接口,同时又继承现有组件库中已经存在的组件。
目标(Target)接口:
当前系统业务所期待的接口,它可以是抽象类或接口。
适配者(Adaptee)类:
它是被访问和适配的现存组件库中的组件接口。
适配器(Adapter)类:
它是一个转换器,通过继承或引用适配者的对象,
把适配者接口转换成目标接口,让客户按目标接口的格式访问适配者
使用场景
需要开发的具有某种业务功能的组件在现有的组件库中已经存在,
但它们与当前系统的接口规范不兼容,如果重新开发这些组件成本又很高,
这时用适配器模式能很好地解决这些问题。
1 //目标接口 2 interface target { 3 void request(); 4 } 5 6 //适配者 7 class adaptee { 8 public void adapteRequest() { 9 System.out.println("适配器方法"); 10 } 11 } 12 13 /** 14 * 类适配器 15 */ 16 17 //适配器 18 class adapte1 extends adaptee implements target { 19 20 @Override 21 public void request() { 22 adapteRequest(); 23 } 24 } 25 26 /** 27 * 对象适配器 28 * 类适配器通过继承来完成适配, 29 * 对象适配器则是通过关联来完成 30 */ 31 32 //适配器 33 class adapte2 implements target { 34 35 private adaptee ad = new adaptee(); 36 37 @Override 38 public void request() { 39 ad.adapteRequest(); 40 } 41 }
原文:https://www.cnblogs.com/loveer/p/11273247.html