适配器模式Demo

适配器模式:将接口的真实指向改变了,改变了其内部的实现方式,把本来不兼容的东西,兼容起来;

//正常的逻辑
public class Target {

    public void required(){
        System.out.println("正常的方法访问!");
    }

}
//要改变成的逻辑
public class NewTarget {

    public void request(){
        System.out.println("难搞客户的特殊方法请求!");
    }
}

//定义一个适配器
public class Adaptor extends  Target{

    NewTarget newTarget = new NewTarget();

    @Override
    public void required() {
        newTarget.request();
    }
}

//客户端
public class Client {

    public static void main(String[] args) {
        System.out.println("正常调用");
        Target target = new Target();
        target.required();

        System.out.println("修改实现");
        Target adaptor = new Adaptor();
        adaptor.required();

    }
}

运行结果:

正常调用
正常的方法访问!
修改实现
难搞客户的特殊方法请求!

可以看到结果,单纯只是改变了实现,如果改为Spring注入那种方式,客户端可以完全不用修改就可以使用到新的功能了;只要是用在兼容性的方面;

猜你喜欢

转载自my.oschina.net/u/3477913/blog/1491033
今日推荐