70-536考试指南:.NET Framework 2.0程序设计与事件处理

需积分: 9 5 下载量 139 浏览量 更新于2024-09-22 收藏 850KB PDF 举报
"这是关于.NET Framework 2.0程序设计的学习资料,主要针对70-536考试的复习,包含了事件处理、反射以及资源管理等多个关键知识点。" .NET Framework 2.0是微软开发的一个全面的开发平台,用于构建、运行各种类型的应用程序。它包含.NET Common Language Runtime (CLR) 和丰富的类库,提供了跨语言的互操作性。 1. **自定义事件参数**: 在.NET Framework中,事件处理通常涉及事件源和事件处理器。题目中的情境是在创建一个自定义事件处理程序,用于自动打印文档并指定打印份数。正确的做法是创建一个派生自`EventArgs`的类,如选项B所示。`EventArgs`是.NET中所有事件参数类的基础类,通过派生自它,你可以添加自定义的属性,如`Copies`,以便在事件处理程序中使用。这样,当触发事件时,可以通过这个自定义类传递额外的信息。 2. **反射(Reflection)**: 反射是.NET框架的一个强大特性,允许在运行时检查类型信息和动态调用方法。在题目中,你需要获取方法`MyMethod`的访问级别。`MethodInfo`对象代表一个方法的信息,其中`IsAssembly`表示方法对同一程序集可见,`IsVirtual`表示方法是否可被重写,`IsStatic`表示方法是否为静态,而`IsFamily`则表示方法是否为保护(仅对类及其子类可见)。因此,正确答案是D,通过访问`IsFamily`属性,你可以判断该方法在派生类中是否可访问。 3. **资源管理**: 当创建一个使用非托管资源(如文件句柄或数据库连接)的类时,必须确保这些资源在不再需要时能被正确释放,以防止内存泄漏。在.NET中,可以使用`IDisposable`接口来实现这一点。正确做法包括以下三个步骤: a. **实现`IDisposable`接口**:在类中实现`IDisposable`,声明一个`Dispose`方法,该方法将清理非托管资源。 b. **使用`using`语句**:鼓励用户通过`using`语句来创建类的实例,这将确保在完成操作后自动调用`Dispose`方法。 c. **提供析构函数**:虽然.NET的垃圾回收机制会自动处理大多数情况,但为了处理未被`using`语句包围的情况,可以提供一个无参的析构函数,该析构函数最终会调用`Dispose`。 通过理解和掌握这些知识点,开发者能够在.NET Framework 2.0环境下编写高效、健壮的代码,同时能够有效地处理事件、获取运行时信息和管理资源。对于准备70-536考试的学生来说,这些内容是必须掌握的基础。