• 代理模式


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

    /// <summary>
    /// 接口类
    /// </summary>
    interface IProxy
    {
        
    string function1();
        
    string function2();
    }
    /// <summary>
    /// 实际类
    /// </summary>
    public class LongDistanceClass:IProxy
    {
        
    public string function1()
        {
            
    return "LongDistanceClass.function1";
        }
        
    public string function2()
        {
            
    return "LongDistanceClass.function2";
        }
    }
    /// <summary>
    /// 代理类
    /// </summary>
    public class ProxyClass:IProxy
    {
        
    public string function1()
        {
            LongDistanceClass myLongDistanceClass
    =new LongDistanceClass();
            
    return myLongDistanceClass.function1();
        }
        
    public string function2()
        {
            LongDistanceClass myLongDistanceClass
    =new LongDistanceClass();
            
    return  myLongDistanceClass.function2();    
        }
    }
    public class MyClass
    {
        
    public static void Main()
        {
            IProxy myproxy
    =new ProxyClass();
            Console.WriteLine(myproxy.function1());
            Console.WriteLine(myproxy.function2());
            Console.ReadLine();
        }
    }

    摘要:在软件系统中,有些对象有时候由于跨越网络或者其他的障碍,而不能够或者不想直接访问另一个对象,如果直接访问会给系统带来不必要的复杂性,这时候可以在客户程序和目标对象之间增加一层中间层,让代理对象来代替目标对象打点一切。这就是本文要说的Proxy模式。

  • 相关阅读:
    ABAP 动态内表构建 Dynamic internal table
    RFC权限分配
    ERP从业来的总结
    WORD中插入VISIO图形,打印乱码解决
    SAP中程序间的相互调用,SUBMIT关键字的用法
    SDva01的屏幕增强
    STL中的binder
    C++中的new
    C++数组中多态问题分析
    Gdiplus中实现双Buffer绘图
  • 原文地址:https://www.cnblogs.com/mikechang/p/1706965.html
Copyright © 2020-2023  润新知