プロパティとインデクサーの比較 (C# プログラミング ガイド)

インデクサーはプロパティと似ています。 次の表で示す相違点を除けば、プロパティのアクセサーに対して定義されているすべての規則が、インデクサーのアクセサーにも適用されます。

プロパティ インデクサー
パブリック データ メンバーのように、メソッドを呼び出せるようにします。 オブジェクト自体で配列表記を使用して、オブジェクトの内部コレクションの要素にアクセスできるようにします。
シンプルな名前でアクセスされます。 インデックスでアクセスされます。
静的メンバーまたはインスタンス メンバーとして使用できます。 インスタンス メンバーである必要があります。
プロパティの get アクセサーにはパラメーターがありません。 インデクサーの get アクセサーには、インデクサーと同じ仮パラメーター リストがあります。
プロパティの set アクセサーには、暗黙の value パラメーターがあります。 インデクサーの set アクセサーには、インデクサーと同じ仮パラメーター リストのほか、value パラメーターがあります。
自動実装プロパティを持つ簡略化された構文がサポートされます。 インデクサーのみを取得するための式形式メンバーがサポートされます。

関連項目