我有这个简单的代码:
public static void Main(String[] args)
{
    Data data = new Data { List = { "1", "2", "3", "4" } };
    foreach (var str in data.List)
        Console.WriteLine(str);
    Console.ReadLine();
}
public class Data
{
    private List<String> _List = new List<String>();
    public List<String> List
    {
        get { return _List; }
    }
    public Data() { }
}
所以当我创建一个Data类时:
Data data = new Data { List = { "1", "2", "3", "4" } };
该列表中填充了字符串"1","2","3","4",即使它没有set.
为什么会这样?
c# properties object-initializers getter-setter collection-initializer