适配器模式(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