首页 > 其他 > 详细

适配器模式

时间:2020-02-24 21:35:10      阅读:76      评论:0      收藏:0      [点我收藏+]

定义:将一个类的接口,转换成客户期望的另一个接口,适配器让原本接口不兼容的类可以合作无间。

类图

技术分享图片

示例

//用户的目标接口
public interface Duck {
    void quack();
}

//被适配者
public class Chicken  {
    public void crow(){
        System.out.println("公鸡打鸣!");
    }
}

//适配器
public class ChickenAdapter implements Duck{
    Chicken chicken;
    public ChickenAdapter (Chicken chicken){
        this.chicken = chicken;
    }
    @Override
    public void quack() {
        chicken.crow();
    }
}

//客户端
public class Client {
    //通过鸭子接口让鸡打鸣
    public static void main(String[] args){
        Duck chickenAdapter = new ChickenAdapter(new Chicken());
        chickenAdapter.quack();
    }
}

运行结果

技术分享图片

 

优点:把两个不相关的类一起运行,提高类的复用。

缺点:调用接口A,获得的是B的实现,过多的使用会造成系统混乱,难以掌控。

使用场景:适用于使用正在运行中的系统的接口,而非在设计初期使用。

适配器模式

原文:https://www.cnblogs.com/camcay/p/12358836.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!