C#中的索引器的简单理解和用法
作者:网络转载 发布时间:[ 2013/6/8 10:33:13 ] 推荐标签:
3、接口中的索引器
在接口中也可以声明索引器,接口索引器与类索引器的区别有两个:一是接口索引器不使用修饰符;二是接口索引器只包含访问器get或set,没有实现语句。访问器的用途是指示索引器是可读写、只读还是只写的,如果是可读写的,访问器get或set均不能省略;如果只读的,省略set访问器;如果是只写的,省略get访问器。
例如:
public interface IAddress
{
string this[int index]{get;set;}
string Address{get;set;}
string Answer();
}
表示所声明的接口IAddress包含3个成员:一个索引器、一个属性和一个方法,其中,索引器是可读写的。
4、索引器与属性的比较
索引器与属性都是类的成员,语法上非常相似。索引器一般用在自定义的集合类中,通过使用索引器来操作集合对象如同使用数组一样简单;而属性可用于任何自定义类,它增强了类的字段成员的灵活性。
|
属性 |
索引器 |
|
允许调用方法,如同公共数据成员 |
允许调用对象上的方法,如同对象是一个数组 |
|
可通过简单的名称进行访问 |
可通过索引器进行访问 |
|
可以为静态成员或实例成员 |
必须为实例成员 |
|
其get访问器没有参数 |
其get访问器具有与索引器相同的形参表 |
|
其set访问器包含隐式value参数 |
除了value参数外,其set访问器还具有与索引器相同的形参表 |

sales@spasvo.com