最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談C#設(shè)計模式之代理模式

 更新時間:2014年12月17日 10:54:06   投稿:hebedich  
這篇文章主要介紹了淺談C#設(shè)計模式之代理模式,需要的朋友可以參考下

代理模式是常用的結(jié)構(gòu)型設(shè)計模式之一,當無法直接訪問某個對象或訪問某個對象存在困難時可以通過一個代理對象來間接訪問,為了保證客戶端使用的透明性,所訪問的真實對象與代理對象需要實現(xiàn)相同的接口.根據(jù)代理模式的使用目的不同,代理模式又可以分為多種類型,例如保護代理、遠程代理、虛擬代理、緩沖代理等,它們應(yīng)用于不同的場合,滿足用戶的不同需求

復(fù)制代碼 代碼如下:

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+"送蛋糕");
        }
    }
}

客戶端調(diào)用:

復(fù)制代碼 代碼如下:

  ZQZ zzz = new ZQZ();
             zzz.myname = "朱建軍";
             Proxy p = new Proxy(zzz);
             p.SendFlower();
             p.SendCake();

代理模式分類:

1. 遠程代理,也就是為一個對象在不同的地址空間提供局部代表,這樣可以隱藏一個對象存在于不同地址空間的事實。

例如: webservice 服務(wù)

2. 虛擬代理, 是根據(jù)需要創(chuàng)建開銷很大的對象。通過它來存放實例化需要很長時間的真是對象。

  瀏覽器當中是用代理模式來優(yōu)化下載頁面的

3.安全代理

  用來控制真實對象訪問時的權(quán)限。

4.智能指引

是指調(diào)用真實對象時,代理處理另外一些事。

相關(guān)文章

最新評論

罗甸县| 永修县| 吉首市| 罗甸县| 盐津县| 桃江县| 合阳县| 仙游县| 康马县| 泸定县| 宁夏| 甘洛县| 娱乐| 余姚市| 巴东县| 延津县| 绥棱县| 建平县| 嵊泗县| 北安市| 铜山县| 徐汇区| 博客| 大渡口区| 柳江县| 广汉市| 松江区| 达日县| 顺昌县| 高密市| 天祝| 邯郸县| 南阳市| 扎囊县| 安丘市| 宜宾县| 巩留县| 六安市| 云阳县| 库尔勒市| 阿克|