0

自動プロパティにプライベート セッターを使用することを想定していない場合 (悪い習慣)、クラス内からプライベートに設定し、パブリックに取得するだけで公開するにはどうすればよいでしょうか? (コンストラクターレベルで設定したいが、getで公開できるようにしたいとしましょう)?

クラスの例:

public class Car
{
    //set the property via constructor
    public SomeClass(LicensePlate license)
    {
         License = license
    }

    public LicensePlate License{get; private set;} // bad practice
}
4

1 に答える 1

4

プロパティをバッキング フィールドを持ち、setter を持たないプロパティに変換します。

public class Car
{
    LicensePlate _license;

    public Car(LicensePlate license)
    {
        _license = license;
    }

    public LicensePlate License
    {
        get { return _license; }
    }
}
于 2013-01-11T03:05:37.000 に答える