适配器模式

适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。
这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。

我们通过下面的实例来演示适配器模式的使用。新闻联播主持人说话,屏幕下方有一个手语翻译老师,这样聋哑人也可以“听”新闻了,这个手语翻译老师就是适配器。


public class AdapterPattern {
    public static void main(String[] args) {
        String translate = new Adapter(new Speaker()).translate();
        System.out.print(translate);
    }
}

class Speaker {
    public String speak() {
        return "China No.1";
    }
}

interface Translator {
    public String translate();
}

class Adapter implements Translator {
    private Speaker speaker;

    public Adapter(Speaker speaker) {
        this.speaker = speaker;
    }

    @Override
    public String translate() {
        String result = speaker.speak();
        return result;
    }
}
复制代码

适配器模式与装饰器模式的区别

目的不一样
对于适配器,原有的接口挺好用的,但是客户端不兼容,适配器只是提供一个转换的作用,相当于客户端直接访问原有接口之间的桥梁,它不会改变原先的接口,
装饰器模式恰恰相反,它就是为了对原有接口进行功能扩展,所以说需要修改原来的接口

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享