• 结构型模式之适配器模式


    适配器模式(Adapter Pattern)又叫做变压器模式,变压器把一种电压变换为另一种电压。

    定义:

    • 将一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法一起工作的两个类能够在一起工作。

    适配器模式就是将一个接口或类转换成其它的接口或类,适配器相当于一个包装器,类图如下所示。

    适配器涉及以下3个角色。

    • 目标(Target)角色:定义要转换成的目标接口。
    • 源(Adaptee)角色:需要被转换成目标角色的源角色。
    • 适配器(Adapter)角色:是适配器模式的核心,其职责是通过继承或是类关联的方式,将源角色转换为目标角色。

    Adaptee.java

    // 源角色
    public class Adaptee {
        public void specificRequest() {
            System.out.println("原有业务处理");
        }
    }

    Target.java

    public interface Target {
        public void request();
    }

    Adapter.java

    public class Adapter extends Adaptee implements Target {
        @Override
        public void request() {
            super.specificRequest();
        }
    }

    Client.java

    public class Client {
        public static void main(String[] args) {
            // 适配器模式应用
            Target target = new Adapter();
            target.request();
        }
    }

    优点:

    • 适配器模式可以让两个没有任何关系的类在一起运行。
    • 增加了类的透明性。
    • 提高了类的复用度。
    • 增强代码的灵活性。

    使用场景:

    • 修改一个已经投产中的系统时,需要对系统进行扩展,此时使用一个已有的类,但这个类不符合系统中的接口,这时使用适配器模式是最合适的,它可以将不符合系统接口的类进行转换,转换成符合系统接口的、可以使用的类。

    摘自:

    青岛东合信息技术有限公司 . 设计模式(Java版) .  电子工业出版社,2012,83-85.

  • 相关阅读:
    gorm.Clause()子句分析之ON DUPLICATE KEY UPDATE
    mvn LifecyclePhaseNotFoundException
    windows下安装配置Maven
    Hystrix熔断器的使用_Golang
    15行python代码,帮你理解令牌桶算法
    详解 hystrixgo 使用与原理 
    Hystrix使用入门手册(中文)
    使用 Prometheus 对 Go 应用程序进行监测
    Leetcode 155. 最小栈 简单
    128. 最长连续序列 中等
  • 原文地址:https://www.cnblogs.com/yewen1234/p/10081662.html
Copyright © 2020-2023  润新知