惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
V2EX
宝玉的分享
宝玉的分享
Jina AI
Jina AI
IT之家
IT之家
博客园 - Franky
MyScale Blog
MyScale Blog
Y
Y Combinator Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
I
InfoQ
雷峰网
雷峰网
WordPress大学
WordPress大学
Microsoft Security Blog
Microsoft Security Blog
Google DeepMind News
Google DeepMind News
美团技术团队
S
SegmentFault 最新的问题
罗磊的独立博客
博客园 - 聂微东
大猫的无限游戏
大猫的无限游戏
H
Help Net Security
D
Docker
博客园 - 司徒正美
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
阮一峰的网络日志
阮一峰的网络日志
M
MIT News - Artificial intelligence

博客园 - 言午

Nopcommerce 二次开发2 Admin Nopcommerce 二次开发1 基础 Nopcommerce 二次开发2 WEB Nopcommerce 二次开发0 sqlce中不支持sp_rename修改表名 C#读取Excel遇到无法读取的解决方法 狼奔代码生成器 银行账户类 累 interface 抽象类 抽象方法 Message 类的继承 多态(虚方法) 事件event 索引! 第五周作业 第四周作业 考试! 线程安全 二 线程安全 一
委托 代理
言午 · 2012-04-11 · via 博客园 - 言午

委托=代理

以前,我们调用方汉,直接 call method

现在,我们使用代理,      call ->delegate -> method

有事,找代理。

1  定义一“种”委托

delegate void MyDelegate(string n);

解释一下,短短的一行代码,信息量巨大。

有一个委托,名叫MyDelegate  ,它能代理形如 void XXX(string)的方法。

2 准备两个方法,过分简单, 不解释

       

static void SayHello(string name )
        {
            Console.WriteLine("Hello , {0}",name);
        }
        static void SayBye(string name)
        {
            Console.WriteLine("Bye , {0}", name);
        }

3  使用委托

下面的代码写在main方法中。

           MyDelegate dl;
            dl = SayHello;
            dl("tom");
            dl += SayBye;
            dl("jack");

 注意 += 是多播委托(一个委托,可以代理多个方法,-=同样有效)