知识大全 C# 索引器

Posted 索引

篇首语:早知今日读书是,悔作从前任侠非。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 C# 索引器相关的知识,希望对你有一定的参考价值。

C# 索引器  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  索引器定义类似于属性 但其功能与属性并不相同 索引器提供一种特殊的方法编写get和set访问器 属性可以像访问字段一样访问对象的数据 索引器可以使用户像访问数组一样访问类成员 定义索引器的语法如下:

  <访问修饰符> 类型名称 this [类型名称 参数名]

  

  get//获得属性的代码

  set //设置属性的代码

  

  索引器没有像属性和方法那样的名字 关键字this清楚地表达了索引器引用对象的特征 和属性一样 value关键字在set后的语句块里有参数传递意义

  和方法一样 索引器有 种存取保护级别new public protected internal private 和 种继承行为修饰virtual sealed override abstract 以及外部索引器 这些行为同方法没有任何差别 唯一不同的是索引器不能为静态(static) 这在对象引用的语义下很容易理解 值得注意的是在重写(override)实现索引器时 应该用base[E]来存取父类的索引器

  和属性的实现一样 索引器的数据类型同时为get语句块的返回类型和set语句块中value关键字的类型

  索引器的参数列表也是值得注意的地方 索引 的特征使得索引器必须具备至少一个参数 该参数位于this关键字之后的中括号内 索引器的参数也只能是传值类型 不可以有ref(引用)和out(输出)修饰 参数的数据类型可以是C#中的任何数据类型 C#根据不同的参数签名来进行索引器的多态辨析 中括号内的所有参数在get和set下都可以引用 而value关键字只能在set下作为传递参数

  定义索引器应注意以下内容:

   所有索引器都使用this关键词来取代方法名 Class或Struct只允许定义一个索引器 而且总是命名为this

   索引器允许类或结构的实例按照与数组相同的方式进行索引 索引器类似于属性 不同之处在于它们的访问器采用参数

   get 访问器返回值 set 访问器分配值

   this 关键字用于定义索引

   value 关键字用于定义由 set 索引器分配的值

   索引器不一定根据整数值进行索引 您可以根据编程要求指定参数类型

   索引器可被重载

   索引器可以有多个形参 例如当访问二维数组时

cha138/Article/program/net/201311/12727

相关参考

知识大全 实战开发C# 索引器学习笔记

实战开发C#索引器学习笔记  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  简单说来所谓索引器就是

知识大全 C# 类中索引器的使用

C#类中索引器的使用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  索引器(Indexer)是C

知识大全 实战开发C# 索引器学习笔记[1]

实战开发C#索引器学习笔记[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  简单说来所谓索引

知识大全 C# 索引器实战开发学习笔记

C#索引器实战开发学习笔记  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  这是使用C#开发智能手

知识大全 实战开发C# 索引器学习笔记[2]

实战开发C#索引器学习笔记[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  备注: 

知识大全 C#锐利体验之第八讲 索引器与操作符重载

C#锐利体验之第八讲索引器与操作符重载  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  索引器  

知识大全 c#中通过值和引用传递参数

  在C#中既可以通过值也可以通过引用传递参数通过引用传递参数允许函数成员(方法属性索引器运算符和构造函数)更改参数的值并保持该更改若要通过引用传递参数请使用ref或out关键字为简单起见本主题的示例

知识大全 Oracle中建立索引并强制优化器使用

Oracle中建立索引并强制优化器使用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  当WHER

知识大全 索引什么时候不工作

  首先要声明两个知识点  ()RBO&CBO  Oracle有两种执行优化器一种是RBO(RuleBasedOptimizer)基于规则的优化器这种优化器是基于sql语句写法选择执行路径的另

知识大全 C#迭代器

C#迭代器  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  迭代器是C#中的新功能迭代器是方法ge