🐷

[.NET/C#] プロパティの実装例

2024/05/18に公開
PropertyTest.cs

public class PropertyTest
{
    // A) classic style
    private int _hoge = default;

    public int Hoge {
        get { return _hoge; }
        set { _hoge = (0==value%2) ? value : value + 1; }
    }

    // B) classic style with access modifiers
    private int _fuga = default;

    public int Fuga {
        get { 
            return _fuga;
        }
        private set {
            _fuga = value;
        }
    }

    // C) auto implementaion from C# 3.0
    // プロパティに値を直接的に get/set する以外の処理がない場合、より簡素化できる。
    public int Hoge {
        get;
        private set;
    } = default;
}


Discussion