C#编程:事件与委托详解

需积分: 0 2 下载量 106 浏览量 更新于2024-08-19 收藏 857KB PPT 举报
"C#程序设计复习资料,包含事件定义、C#基础知识如命名空间、CLR、输入输出、数组、枚举、循环、访问修饰符,以及类与对象的概念。" 在C#程序设计中,事件是实现对象间通信的重要机制。事件允许一个对象(发布者)通知其他对象(订阅者)某个特定操作已经发生。在定义事件时,我们遵循以下语法: ```csharp [访问修饰符] event 委托名 事件名; ``` 例如: ```csharp public delegate void delegateMe(); private event delegateMe eventMe; ``` 在这段代码中,`delegateMe` 是一个委托类型,它定义了一个没有参数且返回值为 `void` 的方法。`eventMe` 是基于 `delegateMe` 声明的事件,使用 `private` 访问修饰符表示它只能在当前类内部被访问。 事件的关键在于委托,委托在C#中是一种引用类型,它引用一个或多个具有相同签名的方法。事件实际上是委托的私有实例,外部对象无法直接调用,只能通过发布者提供的方法(通常是 `raise` 或 `invoke` 方法)来触发事件。 C#的基础语法包括命名空间(用于组织类和方法)、CLR(Common Language Runtime,是.NET框架的核心运行时环境)、输入输出(如 `Console` 类进行控制台输入输出)。数组是存储同类型数据的集合,可以使用不同方式初始化。例如: ```csharp int[] array1 = {1, 2, 3}; // 集合初始化 int[] array2 = new int[5] {1, 2, 3, 4, 5}; // 数组大小初始化 int[] array3 = new int[] {1, 2, 3, 4, 5}; // 相同效果 ``` 枚举(`enum`)提供了一种创建整数常量的集合,方便处理一组相关的值。例如,定义一周中的天: ```csharp enum WeekOfDay { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }; ``` 枚举元素的默认值是连续的整数,但也可以手动设置: ```csharp enum WeekOfDay { Sunday = 1, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }; ``` 循环结构如 `for`、`while`、`do...while` 和 `foreach` 用于重复执行一段代码。`break` 用于立即退出循环,`continue` 则跳过本次循环剩余的部分。访问修饰符(`public`、`private`、`protected`、`internal`、`protected internal`)控制类和成员的可见性。 类是对象的蓝图,描述了对象的属性(如 `姓名`、`性别`)和行为(如 `使用卡片()`)。对象是类的实例,具备类所定义的所有属性和方法。在C#中,类和对象是面向对象编程的核心概念。 复习C#时,应确保理解和掌握这些基本概念,以便在考试(如上述2013年的NIIT在线考试和期末考试)中取得好成绩。通过熟悉这些知识点,你可以编写出更高效、更易于维护的C#代码。