我看了别人的代码,发现了这段代码
private string _deviceName { get; set; }
private string _deviceAlias { get; set; }
我的想法是私有变量的那些自动属性是不必要的。我这么想是对的吗?
答案 0 :(得分:8)
我的想法是私有变量的那些自动属性是不必要的。我这么想是对的吗?
它们不是必需的,但它们也没有真正伤害任何东西。话虽这么说,它们也没有真正帮助任何东西,因为它们纯粹是一个实现细节,所以以后从一个字段切换到一个属性不会是一个重大改变。
可能做到这一点的唯一真正原因是,如果你知道,将来你会想要获取或设置自定义逻辑,并且你正在使用需要语法的属性不同的东西,例如反射。在这种情况下,现在将它们设置为自动属性可以防止以后需要更改代码。
答案 1 :(得分:0)
它只是创建了一个属性,而不是创建变量,您将来在设置和检索值时需要一些自定义工作。