/**
* 适配器的应用场景:
*
* 使原本不能在一起工作的哪些类能够在一起工作(A想调用B的方法,只能通过创建适配器的方法来调用)
*
*/
/**
* 适配者接口
*
*/
public interface Adapee{
public abstract void adapee();
}
/**
* 具体适配者
*
*/
public class JuTiAdapee implements Adapee{
public void adapee() {
System.out.println("具体适配者执行的方法");
}
}
/**
* 目标接口
*
*/
public interface Target {
public abstract void targetAction();
}
/**
* 具体目标
*
*/
public class JuTiTarget implements Target{
public void targetAction() {
System.out.println("具体目标执行的方法");
}
}
/**
* 适配器
*
* 实现目标接口
*
*/
public class Adapter implements Target{
public Adapee adapee;
public Adapter(Adapee adapee){
this.adapee = adapee;
}
public void targetAction() {
adapee.adapee();
}
}
public class Main {
/**
* 适配器的应用场景:
*
* 使原本不能在一起工作的哪些类能够在一起工作(A想调用B的方法,只能通过创建适配器的方法来调用)
*
*/
public static void main(String[] args) {
Target target = null;
JuTiAdapee juTiAdapee = new JuTiAdapee();//具体适配者
Adapter adapter = new Adapter(juTiAdapee);//适配器
target = adapter;
target.targetAction();//目标方法内部调用适配者的方法
}
}