• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > 浅谈C#设计模式之代理模式

浅谈C#设计模式之代理模式

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了浅谈ppp模式,浅谈控销模式,浅谈教学模式,浅谈风机台风模式,浅谈微课教学模式等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

代理模式是常用的结构型设计模式之一,当无法直接访问某个对象或访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,所访问的真实对象与代理对象需要实现相同的接口.根据代理模式的使用目的不同,代理模式又可以分为多种类型,例如保护代理、远程代理、虚拟代理、缓冲代理等,它们应用于不同的场合,满足用户的不同需求

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DesignModel
{
    public class Proxy:IAction
    {
        ZQZ zzz = null;
        public Proxy(ZQZ mm)
        {
            zzz = mm;
        }
        public void SendFlower()
        {
            zzz.SendFlower();
        }
        public void SendCake()
        {
            zzz.SendCake();
        }
    }
    public interface IAction
    {
        void SendFlower();
        void SendCake();
    }
    public class ZQZ : IAction
    {
        public string myname { set; get; }
        public void SendFlower()
        {
            Console.WriteLine(myname+"送花");
        }
        public void SendCake()
        {
            Console.WriteLine(myname+"送蛋糕");
        }
    }
}
</div>

客户端调用:

  ZQZ zzz = new ZQZ();
             zzz.myname = "朱建军";
             Proxy p = new Proxy(zzz);
             p.SendFlower();
             p.SendCake();
</div>

代理模式分类:

1. 远程代理,也就是为一个对象在不同的地址空间提供局部代表,这样可以隐藏一个对象存在于不同地址空间的事实。

例如: webservice 服务

2. 虚拟代理, 是根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真是对象。

  浏览器当中是用代理模式来优化下载页面的

3.安全代理

  用来控制真实对象访问时的权限。

4.智能指引

是指调用真实对象时,代理处理另外一些事。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 浅谈C#设计模式之工厂模式
  • 浅谈C#设计模式之代理模式
  • 浅谈C#设计模式之开放封闭原则

相关文章

  • 2017-05-28C#特性-迭代器(上)及一些研究过程中的副产品
  • 2017-05-28C#从数据库读取数据到DataSet并保存到xml文件的方法
  • 2017-05-28C#中图片.BYTE[]和base64string的转换方法
  • 2017-05-28C#程序打成 一键安装包-InstallShield教程
  • 2017-05-28Enterprise Library for .NET Framework 2.0缓存使用实例
  • 2017-05-28C#基础教程之IComparable用法,实现List<T>.sort()排序
  • 2017-05-28C#最简单的字符串加密解密方法
  • 2017-05-28C# DoubleClick与MouseDoubleClick区别,双击事件引发顺序
  • 2017-05-28C# Hashtable/Dictionary写入和读取对比详解
  • 2017-05-28.Net Winform开发笔记(一)

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C#编写的生辰八字计算程序
    • 解读赫夫曼树编码的问题
    • Unity3d获取系统时间
    • C#模板方法模式(Template Method Pattern)实例教程
    • c#典型工厂化实现实例
    • C#实现利用泛型将DataSet转为Model的方法
    • C#如何检测操作系统版本
    • DevExpress获取节点下可视区域子节点集合的实现方法
    • C#使用StreamReader读取文件的方法
    • C#实现获取磁盘空间大小的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有