プロパティとインデクサーの比較 (C# プログラミング ガイド)Comparison Between Properties and Indexers (C# Programming Guide)

インデクサーはプロパティと似ています。Indexers are like properties. 次の表で示す相違点を除けば、プロパティのアクセサーに対して定義されているすべての規則が、インデクサーのアクセサーにも適用されます。Except for the differences shown in the following table, all the rules that are defined for property accessors apply to indexer accessors also.

プロパティProperty インデクサーIndexer
パブリック データ メンバーのように、メソッドを呼び出せるようにします。Allows methods to be called as if they were public data members. オブジェクト自体で配列表記を使用して、オブジェクトの内部コレクションの要素にアクセスできるようにします。Allows elements of an internal collection of an object to be accessed by using array notation on the object itself.
シンプルな名前でアクセスされます。Accessed through a simple name. インデックスでアクセスされます。Accessed through an index.
静的メンバーまたはインスタンス メンバーとして使用できます。Can be a static or an instance member. インスタンス メンバーである必要があります。Must be an instance member.
プロパティの get アクセサーにはパラメーターがありません。A get accessor of a property has no parameters. インデクサーの get アクセサーには、インデクサーと同じ仮パラメーター リストがあります。A get accessor of an indexer has the same formal parameter list as the indexer.
プロパティの set アクセサーには、暗黙の value パラメーターがあります。A set accessor of a property contains the implicit value parameter. インデクサーの set アクセサーには、インデクサーと同じ仮パラメーター リストのほか、value パラメーターがあります。A set accessor of an indexer has the same formal parameter list as the indexer, and also to the value parameter.
自動実装プロパティを持つ簡略化された構文がサポートされます。Supports shortened syntax with Auto-Implemented Properties. 簡略化された構文がサポートされません。Does not support shortened syntax.

関連項目See also