C#9.0出现的init关键字
public int Age { get; }
public int Age { get; private set; }
public int Age { get; init; }
以上三行代码的区别?
//只读属性,只能在类的构造函数中赋值。
public int Age { get; }
//对于外界是只读属性,在类内部可以随意赋值。
public int Age { get; private set; }
//只读属性,和第一个属性的区别是在使用object initializer时候可以赋值。
public int Age { get; init; }
//可以使用这种方式初始化对象。
Cat cat = new Cat() { Age = 10 };