快速理解C#委托和事件之间关系的伪代码
来源:互联网 发布:已备案域名更换服务器 编辑:程序博客网 时间:2024/06/09 02:05
下面这段有关讲解委托和事件的代码是伪代码,很形象地讲解了委托和事件之间的关系,对新手理解很有帮助,值得收藏。
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication7
{
delegate void 事件处理格式1();
delegate void 事件处理格式2(int n);
class 遥控器 //事件引发者
{
public event 事件处理格式1 事件之按下开键; //遥控器上的开关
public event 事件处理格式1 事件之按下关键;
public event 事件处理格式2 事件之按下数字键;//遥控器上的选台键
public void 开机()
{
if (事件之按下开键 != null)
事件之按下开键();
//如果事件有响应者,发送事件给响应者
}
public void 关机()
{
if(事件之按下关键 != null)
事件之按下关键();
}
public void 选台(int 频道)
{
if (事件之按下数字键 != null)
事件之按下数字键(频道);
}
}
class 电视机 //事件响应者
{
public void 开机()
{
Console.WriteLine("屏幕亮了");
}
public void 关机()
{
Console.WriteLine("屏幕熄了");
}
public void 转换频道(int n)
{
Console.WriteLine("频道{0}播放",n);
}
}
class 程序运行环境 //用于触发事件
{
static void Main(string[] args)
{
遥控器 我的遥控器 = new 遥控器();
电视机 我的电视机 = new 电视机();
//关联"引发者"和"响应者"
我的遥控器.事件之按下开键 += new 事件处理格式1(我的电视机.开机);
我的遥控器.事件之按下关键 += new 事件处理格式1(我的电视机.关机);
我的遥控器.事件之按下数字键 += new 事件处理格式2(我的电视机.转换频道);
//开始触发事件了
我的遥控器.开机();
我的遥控器.选台(20);
我的遥控器.选台(10);
我的遥控器.选台(5);
我的遥控器.关机();
}
}
}
本文来自: IT知道网(http://www.itwis.com) 详细出处参考:http://www.itwis.com/html/net/c/20081114/2809.html
- 快速理解C#委托和事件之间关系的伪代码
- C# 中的委托和事件的理解
- 深入理解C#中的委托和事件:委托的定义
- 快速理解C#高级概念事件与委托的区别
- 委托、事件、接口等之间的关系和区别[转载]
- C#委托和事件理解
- c#委托的理解和代码
- 快速理解C#中的委托与事件
- 委托和事件的关系
- C#委托、事件、自定义事件的理解
- C#委托、事件、自定义事件的理解
- 对于C#中委托和事件的理解
- 理解C#中事件和委托的例子
- 理解C#中事件和委托的例子
- 对C#中委托和事件的理解
- C#中委托、事件和回调函数的理解
- 关于C#委托和事件的粗浅理解
- 个人理解c#的委托和事件,附带例子
- CentOS 5.4搭建APACHE+PHP+MYSQL平台
- 用python编写程序游戏——号码球
- 编程中要解决的问题(持续更新中)
- 在C++中,为什么前自增操作生成左值,后自增操作生成右值?为什么有这样的区别?
- 使用 C++ 处理 JSON 数据交换格式
- 快速理解C#委托和事件之间关系的伪代码
- 做单:第六章 撤退的销售
- NKU 1134 Relation Ordering 【dp】
- ibatis懒加载导致对象json化失败,ibatis和hibernate的懒加载对比
- 实习日志(一)
- 存储过程和函数
- 操作系统学习笔记(36)-CRC码
- Combo box
- 手机开发