《《C#程序设计》-蔡立军-电子教案 第08章》由会员分享,可在线阅读,更多相关《《C#程序设计》-蔡立军-电子教案 第08章(9页珍藏版)》请在金锄头文库上搜索。
1、1,第8章 属性和索引器,8.1 属性 8.2 索引器,2,8.1.1 属性的定义,属性的定义形式为: 或:,3,8.1.2 属性访问器,1get访问器 get访问器是一个不带参数的方法,它用于向外部返回属性成员的值。 它的基本格式为: 修饰符 get访问体 get访问器必须以一条return语句结束,或者是一条异常抛出语句throw。,4,2set访问器 set访问器是一个带有单个参数并且返回类型为void类型的方法,它用于处理类外部的写入值,其中参数类型就是属性的类型。 它的基本格式为: 修饰符 set访问体 set访问器带有一个特殊的关键字value。 一个属性不一定需要既具备get访问
2、器,又具备set访问器。,5,8.1.3 静态属性,如果属性在声明时指定了static修饰符,那么该属性就是一个静态属性,否则,该属性为一个实例属性。 静态属性与特定的实例无关,而实例属性与类的特定实例相关。 访问静态属性成员时,如果采用成员访问形式(E.M),那么E必须代表一个类型;以成员访问形式访问实例成员时,E必须代表一个实例。,6,8.1.4 虚拟、重载和抽象,对于一个非静态的属性,它的声明中可以包括virtual或者abstract修饰符,并且不要求每个访问器都是相同的。 属性也具有多态性,可以在基类的属性定义前添加修饰符virtual,在派生类中重载属性的get或set访问器。 一
3、个派生类中属性的虚访问器可以重载基类中的对应访问器,一个重载属性并不是声明了一个新的属性,而只是实现了一个属性中的虚访问器。,返回目录,7,8.2.1 索引器的定义,class 类名 特征 修饰符 类型 this索引参数表 get /代码体 set /代码体 ,8,8.2.2 索引器的使用,1索引器的使用 索引器的用法与数组大致相同。定义了一个索引器以后,就可以对对象使用方括号表示法()来读、写对象中的值。 2索引器的重载 用户可以自由选择字符串或其他类型做索引创建索引器。 索引值可以重载,这样索引给定集合时,可以按用户需要使用整数值或字符串值。,9,3多索引器的使用 在同一个类中可以定义多个索引器。 多索引器在使用时,依靠索引器的参数表进行区分。,返回目录,