c# - C# 中的字段和属性最佳实践

标签 c# c#-3.0

<分区>

亲爱的,哪一个是使用 C# 的最佳实践,为什么?
1.

private string name;

public string Name
{
  get { return name; }
  set { name = value; }
}

2.

public string Name { get; set; }

3.

protected string name;
public string Name
{
  get { return name; }
  set { name = value; }
}

4. 请添加...

最佳答案

片段12 都可以。当您不需要访问基础字段时,第二个只是一种更方便的编写第一个的方法。

Snippet 3 但是,通常应避免使用(除非您有某些特定原因需要它),因为字段几乎总是私有(private)的。如果您需要提供一种不同的方式来为后代类设置字段(这不太可能),那么您可以使用方法或其他属性。

请记住, protected 成员本质上只是一个稍微受限更多的公共(public)成员,因为只要它在后代类中,客户端代码就可以访问它。这意味着客户端代码可以直接绑定(bind)到类的实现而不是它的接口(interface),这是一件坏事!

关于c# - C# 中的字段和属性最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2265711/

相关文章:

c# - 遍历 2 个列表

c# - ASP.NET SQL Server 存储过程返回消息

c# - 对 IIS 站点的第一次请求总是产生 500.21 错误

c# - Xamarin Forms MVVM 与实际模型

c# - C# 对象初始化器的嵌套使用

c# - 加载了错误的 App.config

c# - 在自定义类中处理异常

c# - 我可以在 Xamarin、C#、iOS 中保存对象数组(或 json 数组、字典数组)吗?

c#-3.0 - 使用 C# 3.0 特性有什么缺点吗?

c# - 保存当前窗口 URL 并在几次导航后移回该 URL