一,适配器模式概述
适配器模式将一个接口转换成客户希望的另外一个接口。它使得原来由于接口不兼容而不能在一起工作的那些类可以一起工作
适配器模式分为类适配器模式和对象适配器模式
java SDK中的inputStreamReader用的是对象适配器模式,继承Reader,并持有InputStream的引用。可以将InputStream转化为Reader.
二,适配器模式UML类图
三,适配器模式代码例子
类适配器中,适配器类通过实现Target接口并继承Adaptee类,实现适配目的。
public class Adapter extends Adaptee implements Target
{
//request()方法为Target接口里所定义的方法
public void request()
{
specificRequest();//该方法为Adaptee类里定义的方法
}
}
对象适配器中,适配器类通过继承Target类并关联一个Adaptee对象,实现适配目的。
public class Adapter extends Target
{
private Adaptee adaptee;//所关联的适配者类的对象
public Adapter(Adaptee adaptee)
{
this.adaptee=adaptee;
}
public void request()
{
adaptee.specificRequest();
}
}