自動実装するプロパティ (C# プログラミング ガイド)

更新 : 2007 年 11 月

自動実装するプロパティを使用すると、プロパティのアクセサで追加のロジックが必要ない場合に、プロパティ宣言がより簡単になります。次の例のようなプロパティを宣言する場合、コンパイラはプライベートな匿名バッキング フィールドを作成します。このフィールドにアクセスするには、プロパティの get アクセサと set アクセサを使用する必要があります。

使用例

次の例は、いくつかの自動実装プロパティを持つ簡単なクラスを示しています。

class LightweightCustomer
{
    public double TotalPurchases { get; set; }
    public string Name { get; private set; } // read-only
    public int CustomerID { get; private set; } // read-only
}

自動実装するプロパティは get アクセサと set アクセサの両方を宣言する必要があります。読み取り専用の自動実装プロパティを作成するには、プライベートな set アクセサを用意します。

属性は、自動実装するプロパティには使用できますが、バッキング フィールドには使用できません。これは、ソース コードからバッキング フィールドにアクセスできないためです。プロパティのバッキング フィールドで属性を使用する必要がある場合は、通常のプロパティを作成します。

参照

参照

プロパティ (C# プログラミング ガイド)

修飾子 (C# リファレンス)