C#中私有集属性的使用

Use of private set property in C#

有人可以解释 private 访问修饰符在 C# set 属性 中的使用以及在 C# getter 中默认使用 get 属性 和setter 方法?我是 C# 编程语言的新手。

示例代码:

public Status
{
    get { return my_status; }
    private set
    {
            if (value != my_status)
            {
                //something here
                my_status=value;
            }
    }
}

如果您没有为 get/set 指定任何访问修饰符,将使用 属性 访问修饰符。您可以为 getset.

指定更严格的访问修饰符

在您的示例中,由于 Statuspublic 但有一个私有的 set,因此 属性 可以从任何地方读取,但只能从声明 class.

当我们想限制成员属性初始化到它自己的class时使用私有集,而不是从class之外