• 适配器模式


    1 类适配器

    代码
        using System;
        
    using System.Collections.Generic;
       
       
    interface Itest
        {
              
    void NewRequest();
        }
       

       
    class Method
       {
               
    public void OldRequest()
               {
                       
    //DO;
               }
       }
      

       
    class MethodAdpter:Method,Itest
       {
               
    public void NewRequest()
               {
                       
    this.OldRequest();
               }
       }
      

       
    public class MyClass
       {
               
    public static void Main()
               {
                       Itest mytest
    =new MethodAdpter();
                       mytest.NewRequest();
               }
       }

    2 对象适配器

    代码
        using System;
        
    using System.Collections.Generic;
       

        
    class Adaptee
        {
                
    public void OldRequest()
               {
                       
    //TODO:
               }
       }
      

       
    class Target
       {
               
    virtual public void NewRequest()
               {
              
               }
       }
      

       
    class Adapter:Target
       {
               
    private Adaptee adaptee=new Adaptee();
              
               
    override public void NewRequest()
               {
                       adaptee.OldRequest();
               }
       }
      

       
    public class MyClass
       {
               
    public static void Main()
               {
                       Target t
    =new Adapter();
                       t.NewRequest();
               }
       }


  • 相关阅读:
    jQuery removeAttr() 源码解读
    jQuery attr() 源码解读
    jQuery access()方法
    为页面添加favicon
    关于CSS3 object-position/object-fit属性的使用
    使用jQuery判断元素是否在可视区域
    使用canvas实现环形进度条
    使用css3实现瀑布流布局效果
    js判断元素滑动方向(上下左右)移动端
    绝对定位元素实现水平垂直居中
  • 原文地址:https://www.cnblogs.com/mikechang/p/1709028.html
Copyright © 2020-2023  润新知