适配器又称包装器(Wrapper),它将一个接口转换成用户希望的另外一个接口,
使得原来由于接口不兼容而不能一起工作的那些类可以一起工作。
如果碰到两个没有关系的类组合在一起使用的问题,就应使用Adapter,
使得原来由于接口不兼容而不能一起工作的那些类可以一起工作。
如果碰到两个没有关系的类组合在一起使用的问题,就应使用Adapter,
在这两种接口间创建一个混合接口。
interface Target
{
void method1();//这是Adaptee有的方法
void method2();//这是Adaptee没有的方法
}
class Adaptee
{
public void method1(){}
}
public class Adapter implements Target
{
private Adaptee adaptee;
public Adapter(Adaptee adaptee){
this.adaptee = adaptee;
}
//直接调用Adaptee的方法,没有必要重新写method1()的代码,这就是好处
public void method1(){
adaptee.method1();
}
public void method2(){
//再此加入补充的方法的实现代码
}
}
通过Adapter,我们就可以使用Adaptee的接口,同时又可以扩展新的接口。