防止类访问其自己的字段之一

时间:2016-09-26 09:49:21

标签: c# field

在C#中,有没有办法防止类访问自己的某个字段?

例如:

class MyClass()
{
    private object field;
    public object Property
    {
        get { return field; }
        set { field = value; }
    }

    public void myMethod()
    {
        field = null; // forbidden
        Property = null; // allowed
    }
}

原因是始终使用setter,因此调用了一些函数。

2 个答案:

答案 0 :(得分:2)

没有。如果要在访问器中的某个位置设置其值,则无法阻止类访问其自己的字段。

答案 1 :(得分:1)

这样你就不需要支持领域了。 但我不认为你在寻找这样的人。

Class MyClass()
{
    public object Property { get; set; }

    public void myMethod()
    {
        Property = null; // allowed
    }
}