c# 索引访问器详解

来源:互联网 发布:ax是什么软件 编辑:程序博客网 时间:2024/04/30 01:33

关于c#的索引访问器,最近看 c#4.0图解教程的时候 看到这一部分觉得很有意思,拿出来整理下 做个分享

索引是类中一组特定的属性,每个类只能有一个索引,这个容易理解,多了就扯淡了,一本书能有2个同名同内容的目录么?当然不能哈哈,所以索引只能用 this来表示 也就是类对象自身,当然 中英文,数字 字符串 电子的不同形式的目录,这和索引重载的意义相同。

这也符合 索引运算符的特征 class[index];这不正是类自身么,this是指向当前对象的指针,索引既然是属性自然就不用分配内存,当然 索引也有 set和get方法 使用索引读取类对

象的过程就隐式的调用了get方法,赋值自然是set方法,有趣的部分在这里,因为索引针对的是整个类中的所有属性 字段,字段对外本身就是属性的体现,c#里封装的属性 都包含

了一个后被字段,比如control类的count属性 就是 count属性和count字段 相结合的封装方式。

索引的声明语法 访问修饰符 type this[type index]{get;set;} 默认中索引是以0递增的方式来储存每个属性的访问指针,但我们可以再set方法中显式的指定 索引指针,这意味

着对于同一个属性 你可以用不同的指针去调用它,并且get方法本身支持编程方式的访问,这对类属性的访问带来了极大的的灵活性和便利性。

原创粉丝点击