私有变量的自动属性是否不必要?

时间:2012-06-26 17:12:09

标签: c# class automatic-properties

我看了别人的代码,发现了这段代码

private string _deviceName { get; set; }
private string _deviceAlias { get; set; }

我的想法是私有变量的那些自动属性是不必要的。我这么想是对的吗?

2 个答案:

答案 0 :(得分:8)

  

我的想法是私有变量的那些自动属性是不必要的。我这么想是对的吗?

它们不是必需的,但它们也没有真正伤害任何东西。话虽这么说,它们也没有真正帮助任何东西,因为它们纯粹是一个实现细节,所以以后从一个字段切换到一个属性不会是一个重大改变。

可能做到这一点的唯一真正原因是,如果你知道,将来你会想要获取或设置自定义逻辑,并且你正在使用需要语法的属性不同的东西,例如反射。在这种情况下,现在将它们设置为自动属性可以防止以后需要更改代码。

答案 1 :(得分:0)

它只是创建了一个属性,而不是创建变量,您将来在设置和检索值时需要一些自定义工作。