设计模式之适配器模式
温馨提示:
本文最后更新于 2023年11月16日,已超过 433 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
适配器模式
适配器属于结构型模式。目的是解决在不改变已有代码的情况下,提供一个桥梁(适配器),使互不兼容的两个接口(或系统)可以正常连接工作。
组成
目标(Target):需要适配的标准接口;
源对象(Source):需要被适配的不兼容对象;
适配器(Adapter):充当桥梁,将源对象转换成目标接口。
应用场景
系统数据及稳定性都没问题,但接口不符时,考虑使用适配器。
例如:
- 民用电压220V交流电,而我们手机需要的是5V直流电;
- MAC需要增加转接头才可以插网线;
- 老系统登录需要兼容三方登录,如:QQ、微博等;
优缺点
优点
- 可靠性:对旧接口的封装,对客户端透明,使得客户端无需修改代码;
- 复用性:复用不兼容的类,无需修改,组合使用;
- 扩展性:在开发过程中,可以增加新的适配器和被适配对象。
缺点
- 过多适配器会导致系统结构复杂化;
- 滥用适配器模式会导致系统设计紊乱;
- 如果适配器没有好的实现方式,可能会影响整体系统性能;
实现
public class MAC {
public void port() {
System.out.println("我是typeC接口");
}
}
public interface Target {
void port();
}
public class Adapter extends MAC implements Target{
@Override
public void port() {
super.port();
System.out.println("新增usb接口");
System.out.println("新增网线接口");
}
}
public static void main(String[] args) {
Target target = new Adapter();
target.port();
}
输出
我是typeC接口
新增usb接口
新增网线接口
正文到此结束
- 本文标签: 设计模式
- 本文链接: https://www.58cto.cn/article/17
- 版权声明: 本文由程序言原创发布, 非商业性可自由转载、引用,但需署名作者且注明文章出处:程序言 》 设计模式之适配器模式 - https://www.58cto.cn/article/17