什么是适配器模式
适配器模式作为7种结构型模式中的一种,其目的是将一个类的接口转换成客户希望的另一个接口,Adapter(适配器)模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作.
必须知道的三个角色
需要适配的类(Adaptee):需要适配的类或适配者类。
适配器(Adapter):通过包装一个需要适配的对象,把原接口转换成目标接口。
目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。
被适配的类
public class Adaptee {
public void request() {
System.out.print("可以完成客户请求的需要的功能");
}
}
目标接口
public interface Target {
void handelReq();
}
对象适配器
public class Adapter2 implements Target{
private Adaptee adaptee;
public Adapter2(Adaptee dAdaptee) {
this.adaptee=dAdaptee;
// TODO Auto-generated constructor stub
}
@Override
public void handelReq() {
// TODO Auto-generated method stub
adaptee.request();
}
}
类适配器
public class Adapter extends Adaptee implements Target{
@Override
public void handelReq() {
// TODO Auto-generated method stub
super.request();
}
}
测试代码
public class test {
public void test1(Target t)
{
t.handelReq();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
test test=new test();
Adaptee adaptee=new Adaptee();
//类适配器
Target target=new Adapter();
test.test1(target);
//对象适配器
Target t1=new Adapter2(adaptee);
test.test1(t1);
}
}