设计模式之适配器模式

简介: 适配器模式定义适配器模式是结构型设计模式的一种,通过使用继承或组合的方式将不兼容的接口适配为另一种兼容的接口。

适配器模式定义


适配器模式是结构型设计模式的一种,通过使用继承或组合的方式将不兼容的接口适配为另一种兼容的接口。


适配器模式的使用场景


适配器模式主要用于接口不兼容的情况,因此如果在前期接口设计得当,该设计模式便没有用武之地。那么有哪些场景会使接口不兼容呢?


依赖了多个功能相似的外部系统,如短信平台。使用适配器模式统一依赖的多个外部系统的接口。

版本升级需要废弃对外提供的旧接口,使用适配器模式临时过渡。


适配器模式的实现

通过继承实现

public class OldClass {
    public void oldMethod(){
    }
}
public interface NewInterface {
    void newMethod();
}
public class OldClassAdapter extends OldClass implements NewInterface{
    @Override
    public void newMethod() {
        super.oldMethod();
    }
}


通过组合实现


实现选择

如果需要适配的旧的类很少,那么使用继承或组合的方式实现适配器模式都可以。

如果需要适配的旧的类很多,并且旧的类的方法和新的接口中的方法相似,那么使用继承实现适配器模式。

如果需要适配的旧的类很多,并且旧的类的方法和新的接口中的方法差异较大,那么可以使用组合的方式实现适配器模式。


目录
相关文章
|
3月前
|
设计模式 Java API
重构旧代码的秘诀:用设计模式 - 适配器模式(Adapter)给Java项目带来新生
【4月更文挑战第7天】适配器模式是解决接口不兼容问题的结构型设计模式,通过引入适配器类实现目标接口并持有不兼容类引用,实现旧代码与新接口的协作。适用于处理兼容性问题、整合遗留代码和集成第三方库。应用时,识别不兼容接口,创建适配器类转换方法调用,然后替换原有引用。注意保持适配器简单、使用组合和考虑扩展性。过度使用可能导致系统复杂和维护成本增加,应谨慎使用。
55 4
|
3月前
|
设计模式 Java 中间件
23种设计模式,适配器模式的概念优缺点以及JAVA代码举例
【4月更文挑战第6天】适配器模式(Adapter Pattern)是一种结构型设计模式,它的主要目标是让原本由于接口不匹配而不能一起工作的类可以一起工作。适配器模式主要有两种形式:类适配器和对象适配器。类适配器模式通过继承来实现适配,而对象适配器模式则通过组合来实现
70 4
|
3月前
|
设计模式 Java
【设计模式】JAVA Design Patterns——Adapter(适配器模式)
【设计模式】JAVA Design Patterns——Adapter(适配器模式)
|
1天前
|
设计模式 XML 存储
【六】设计模式~~~结构型模式~~~适配器模式(Java)
文章详细介绍了适配器模式(Adapter Pattern),这是一种结构型设计模式,用于将一个类的接口转换成客户期望的另一个接口,使原本不兼容的接口能够一起工作,提高了类的复用性和系统的灵活性。通过对象适配器和类适配器两种实现方式,展示了适配器模式的代码应用,并讨论了其优点、缺点以及适用场景。
|
30天前
|
设计模式 Go 数据处理
iLogtail设计模式问题之在iLogtail中,为何需要使用适配器模式
iLogtail设计模式问题之在iLogtail中,为何需要使用适配器模式
|
2月前
|
设计模式
适配器模式-大话设计模式
适配器模式-大话设计模式
21 2
|
1月前
|
设计模式 JavaScript 前端开发
js设计模式【详解】—— 适配器模式
js设计模式【详解】—— 适配器模式
19 0
|
2月前
|
设计模式 Java Android开发
Java设计模式:适配器模式的三种形式(五)
Java设计模式:适配器模式的三种形式(五)
|
2月前
|
设计模式 Java
Java设计模式之适配器模式详解
Java设计模式之适配器模式详解
|
2月前
|
设计模式 程序员
结构型设计模式之适配器模式
结构型设计模式之适配器模式