C#属性,这是不好的做法吗?

时间:2019-05-15 14:34:08

标签: c# properties

一般来说,我是C#和OOP的新手。我刚刚了解了c#中的Properties-具有get和set方法。

像下面的代码示例一样,从另一个属性的集合中更新一个属性是否是错误的做法?

    private int _prop1;

    public int Prop1
    {
        get { return _prop1; }
        set { _prop1 = value; OnPropertyChanged("Prop1"); Prop2 = value; }
    }

    private int _prop2;

    public int Prop2
    {
        get { return _prop2; }
        set { _prop2 = value; }
    }

1 个答案:

答案 0 :(得分:0)

如果两个属性都是可读写的,我会说这是不好的做法,因为这会造成混乱。如果受影响的属性为只读也可以。这是一个好的示例:

public int LivesRemaining {get; set;}

public bool IsDead {get => LivesRemaining == 0}

设置LivesRemaining = 0将使IsDead属性变为true。但这不足为奇或令人困惑。