炫意html5
最早CSS3和HTML5移动技术网站之一

C# 属性和字段的区别

public class Demo
{
/// <summary>
/// 第一种方法声明(A)
/// </summary>
private string _Name;
public string Name
{
get { return _Name; }
set { _Name = value; }
}
/// <summary>
/// 第二种方法声明(B)
/// </summary>
public string Name { get; private set; }
}

请问:
1.在C#中这两种声明方式有什么区别吗?
2.目前所知应该是从.net framework升级之后产生的变化;
3.如果有所却别,在什么场景下独立使用呢?

回答

1.在C#中这两种声明方式有什么区别吗?
没有区别, 仅仅语法区别而已.
2.目前所知应该是从.net framework升级之后产生的变化;
该特性详细解释请参考官方文档:
https://docs.microsoft.com/zh-cn/dotnet/csharp/whats-new/csharp-version-history#c-version-60
https://docs.microsoft.com/zh-cn/dotnet/csharp/properties
3.如果有所却别,在什么场景下独立使用呢?
参考文档说明.

炫意HTML5 » C# 属性和字段的区别

Java基础教程Android基础教程