C#面向对象编程:索引器的声明与使用示例

需积分: 0 1 下载量 78 浏览量 更新于2024-08-19 收藏 1.72MB PPT 举报
"面向对象程序设计基础,以C#语言为例,深入讲解声明和使用索引器的概念和实践。" 在C#中,面向对象程序设计是核心特性之一,它包括类、对象、继承、封装、多态等概念。类是对象的蓝图,描述了对象的属性和行为。在给定的示例中,`IndexerTesting` 类展示了如何声明和使用索引器。 索引器允许类像数组一样通过下标访问其成员,提供了一种方便的访问方式。在这个例子中,`IndexerTesting` 类有两个类型的索引器:一个用于整数类型(`int`),另一个用于字符类型(`char`)。 1. `int` 类型的索引器:`public int this[int ind]`,返回数组 `IntArray` 中对应下标 `ind` 的元素。这种索引器使得我们能够像访问数组一样操作 `IntArray`。 2. `char` 类型的索引器:`public int this[char chInStr]`,返回字符串 `theStr` 中字符 `chInStr` 的索引位置。这允许我们通过字符来查找字符串中的位置。 类的其他成员还包括: - `theInt`:一个整数变量,通过 `IntAccessor` 提供 get 和 set 访问器,set 访问器确保赋值始终为正数。 - `theStr`:一个字符串变量,通过 `TheString` 提供 get 和 set 访问器,set 访问器在设置时会追加当前日期时间。 面向对象的特性在C#中体现得淋漓尽致。C#的类可以有访问修饰符,如 public、private、protected 和 internal,控制成员的可见性和访问范围。抽象类(abstract)用于定义接口,不能直接实例化,只能作为其他类的基类。密封类(sealed)则防止其他类继承它。 C#的类还支持构造函数,用于初始化对象。在示例中,`public IndexerTesting(int[] iArr)` 是构造函数,接收一个整数数组并赋值给 `IntArray`。 数组是C#中的基本数据结构,可以存储相同类型的元素集合。在本例中,`IntArray` 是一个整数数组,可以通过索引器访问其元素。 此外,C#中的委托(delegate)允许定义和传递方法作为参数,事件(event)则是委托的特殊应用,常用于实现异步编程和回调机制。虽然在示例中未涉及,但它们是C#面向对象编程中的重要组成部分。 总结,`IndexerTesting` 类演示了如何在C#中声明和使用索引器,以及如何利用面向对象特性来组织和操作数据。通过类和对象,我们可以构建复杂且灵活的软件系统。