黑马程序员技术交流社区
标题:
事件的理解
[打印本页]
作者:
♂张耕明
时间:
2012-11-10 22:19
标题:
事件的理解
本帖最后由 ♂张耕明 于 2012-11-10 22:48 编辑
事件:它封装了委托类型的变量,使得:在类的内部,不管你声明它是public还是protected,它总是private的。在类的外部,注册“+=”和注销“-=”的访问限定符与你在声明事件时使用的访问符相同。
public delegate void SayDelegate(string content);//定义一个委托
class Program
{
static void Main(string[] args)
{
SayManager manager = new SayManager();
manager.sayDelegate += Program.SayChinese;
manager.Say("这是事件的演示!");
Console.ReadKey(true);
}
private static void SayChinese(string content)
{
Console.WriteLine("中文:" + content);
}
private static void SayEnglish(string content)
{
Console.WriteLine("英文:" + content);
}
}
class SayManager
{
public event SayDelegate sayDelegate;//声明一个事件就是类似于声明一个进行了封装的委托类型的变量
public void Say(string content)
{
sayDelegate(content);
}
}
复制代码
作者:
许坤
时间:
2012-11-10 22:47
沙发,学习!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2