Tre*_*ott 5

第一个称为字段.第二个是属性,在这种情况下是一个自动实现的属性.

属性就像字段一样,但使用getter和setter函数来检索和设置值.编写上述属性的另一种方法如下:

private int _x;
public int X
{
    get
    {
        return _x;
    }
    set
    {
        _x = value;
    }
}
Run Code Online (Sandbox Code Playgroud)

_x在这种情况下,变量称为后备字段.使用自动实现的属性,您无法访问支持字段或自定义getter/setter中的代码,但如果您不需要,则可以更短,更简洁.

作为C#中的规则,大多数情况下,任何公共成员都应该作为属性而不是字段公开.