以下是C# 6中初始化属性的几种表达方式之间的区别:
1. 从构造函数初始化自动属性
1. 从构造函数初始化自动属性
public class Context1
{
public Context1()
{
this.Items = new List<string>();
}
public List<string> Items { get; private set; }
}
2:从后备字段初始化属性
public class Context2
{
private readonly List<string> items;
public Context2()
{
this.items = new List<string>();
}
public List<string> Items
{
get
{
return this.items;
}
}
}
3: C# 6中的自动属性新语法
public class Context3
{
public List<string> Items { get; } = new List<string>();
}
4: C# 6中的自动属性新语法
public class Context4
{
public List<string> Items => new List<string>();
}