• 适配器模式


    定义

    将对象的功能实现转变成提供者提供的功能结构。即保留现有类所提供的服务,向客户提供接口,实现不同接口之间的适配调用。

    类图描述

    代码示例

     1  /*
     2      * 使用情景:现有程序已经写好,或者是按程序设计时已经固定接口
     3      * 但是又需要与其他程序或者接口匹配,调用实现
     4      * 此时就需要用到设配器的模式---提供一个过渡转变方式调用实现
     5      *
     6      */ 
     7     public interface ITarget
     8     {
     9         void Show();
    10     }
    11 
    12     public class Target : ITarget
    13     {
    14 
    15         public void Show()
    16         {
    17             //TODO show
    18             Console.WriteLine("Show");
    19         }
    20     }
    21 
    22     public class Adapter : ITarget
    23     {
    24         private IAdaptee adaptee = null;
    25         public Adapter(IAdaptee adaptee)
    26         {
    27             this.adaptee=adaptee;
    28         }
    29         public void Show()
    30         {
    31             adaptee.Display();
    32         }
    33     }
    34     #region 一般为第三方或者其他已经固定的程序
    35     public interface IAdaptee
    36     {
    37         void Display();
    38     }
    39     public class Adaptee : IAdaptee
    40     {
    41         public void Display()
    42         {
    43             //TODO display
    44             Console.WriteLine("Display");
    45         }
    46     }
    47     #endregion
    View Code

    总结

    适配器模式其实随处可见,实则是接口之间的调用。当然上面是常用的对象适配模式;如果是双向调用(例如是同一项目中的程序,而非第三方),那么我们可以使用类适配模式(一般不常用)

    类适配模式的类图如下:

    That's it...

    Top
    收藏
    关注
    评论
  • 相关阅读:
    css3正方体效果
    单行文本溢出和多行文本溢出变省略号
    iscroll的滑动效果
    angular笔记
    html页面的css样式、meta最常用的最基本最常规的配置参数
    解决webstorm卡顿问题
    pc端网页的设计尺寸
    时间字符串解析成日期时间格式
    Inf2Cat, signability test failed.
    #pragma once 与 #ifndef 解析(转载)
  • 原文地址:https://www.cnblogs.com/Joy-et/p/4841982.html
Copyright © 2020-2023  润新知