JAVA 设计模式 适配器模式

我与影子孤独终老i 提交于 2020-01-17 12:36:17

目录

 

用途


适配器模式 (Adapter)
将一个类的接口转换成客户希望的另外一个接口。
Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
适配器模式是一种结构型模式

 

 

结构


图-适配器模式结构图

Target : 定义用户实际需要的接口

abstract class Target {
    public abstract void Request();
}

Adaptee : 定义一个需要适配的接口

class Adaptee {
    public void SpecificRequest() {
        System.out.println("特殊请求");
    }
}

Adapter : 通过在内部包装一个 Adaptee 对象,把源接口转换成目标接口。

复制代码
class Adapter extends Target {
    private Adaptee adaptee = new Adaptee();

    @Override
    public void Request() {
        adaptee.SpecificRequest();
    }
}
复制代码

测试代码

复制代码
public class AdapterPattern {
    public static void main(String[] args) {
        Target target = new Adapter();
        target.Request();
    }
}
复制代码

运行结果

特殊请求

 

 

应用场景


想要使用一个已经存在的类,但如果它的方法不满足需求时;

两个类的职责相同或相似,但是具有不同的接口时要使用它;

应该在双方都不太容易修改的时候再使用适配器模式适配,而不是一有不同时就使用它。


 

 

推荐

本文属于 JAVA设计模式系列 。

 

 

参考资料

《大话设计模式》

《HeadFirst设计模式》 
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!