概述
  将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作

实现:
  定义一个适配器类来实现当前系统的业务接口,同时又继承现有组件库中已经存在的组件。

目标(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 }