有什么好处:
public string User {get; set;}
超过
public string User;
既然在第一种情况下您无法访问私有成员,那么仅将您的财产公开有什么不同?
有什么好处:
public string User {get; set;}
超过
public string User;
既然在第一种情况下您无法访问私有成员,那么仅将您的财产公开有什么不同?
第二个示例是将字段公开,而不是属性(您的问题)。这提供了一种制作简单属性的简单方法。属性应该是您的默认值,而不是公共字段;原因不胜枚举,但首先是:
哦 - 我提到封装了吗?
事后从字段更改为属性是一项重大更改 - 特别是如果您使用大量“引用”代码或可变结构(yeuch)。
当用户值发生变化时,您必须做很多事情。您事先不知道或在设计课程时不存在的事情。例如,有一天您意识到用户值应该至少有 5 个字符长。如果你有财产,它很容易实现。如果您有一个公共字段,则必须将其更改为属性并重新编译所有相关代码。
从本质上讲,我认为明确区分我们类型的公共/API 部分和私有实现细节是值得的。
有人提到封装吗?;)