1. 适配器模式简单介绍
- 作用:将一个类的接口转换成客户希望的另外一个接口,使得由于接口不兼容而不能一起工作的类能够一起工作;
- 在适配器模式中有三种类型的角色:一种是目标接口(只客户所需要的接口,可以是具体的或抽象的类,也可以是接口);需要适配的类(就是指哪个对象需要这个类);适配器(通过包装某一个对象,将原来的接口转换成目标接口);
2.适配器模式的简单使用
- 关于适配器的创建步骤:
首先是要拥有或者创建一个需要适配的类(Adaptee);
然后就是需要创建一个接口(target),这个接口里面需要有有用的方法;
创建一个适配器(Adapter)(类可以继承需要适配的类);
第一步:
//被适配的类,
public class Adatee {
//在被适配类中定义一些方法,方便客户端调用;
public void request(){
System.out.println("调用了被适配类中的方法");
}
}
第二步:
//创建一个需要的接口;
public interface Target {
//在这里创建需要的方法;
void Handle();
}
第三步:
//创建一个适配器;
public class Adapter implements Target {
//定义一个被适配类的对象;
private Adatee adatee;
//这里可以通过构造方法将Adatee的对象放进这个类;
public Adapter(Adatee adatee) {
this.adatee = adatee;
}
@Override
public void Handle() {
//由于上面的对象通过构造方法传进来了,所以就可以调用被适配类的方法了;
adatee.request();
}
}
测试类:
//建立一个测试
public class Client {
public static void main(String[] args) {
//创建一个适配器的对象,这样就可以直接调用方法;
Adapter adapter = new Adapter(new Adatee());
adapter.Handle();
}
}
结果:
就我的理解看来这种适配器模式大致可以理解为,一个类,我们需要在其它地方调用它,不过可能有某些原因无法直接调用或者不想直接调用,那么创建一个适配器,然后通过适配器去调用是非常不错的;如果理解有误,还望不吝赐教;