对象初始化器用于指定对象的一个或多个可访问的字段或属性的值,通过{和}进行封闭起来,多个字段赋值之间通过逗号分割。具体语法元素是:
1. 对象创建表达式:
new 类型(类型参数可选)对象或集合初始化器可选
new 类型 对象或集合初始化器
2. 对象或集合初始化器:
对象初始化器
集合初始化器
3. 对象初始化器:
{对象成员初始化器列表}
4. 对象成员初始化器列表:
对象成员初始化器
对象成员初始化器列表,对象成员初始化器
5. 对象成员初始化器:
标识符 = 初始化值
6.初始化值:
表达式
对象或成员初始化器
注意:对象或成员初始化器是可以嵌套的,并且初始化器是不包含new关键字的。初始化器不能用于结构,初始化器中每个成员最多只能初始化一次。示例:
public class Point
{
public int X { get; set; }
public int Y { get; set; }
}
public class Rectangle
{
Point p1 = new Point{ X = 1,Y = 2 };
Point p2 = new Point{X=3,Y=3};
public Point P1 { get { return p1; } set { p1 = value; } }
public Point P2 { get { return p2; } set { p2 = value; } }
}
Rectangle r2 = new Rectangle() { P1 =new Point { X = 5, Y = 6 }, P2 = { X = 7, Y = 8 } };
请注意r2的初始化中的不同。
本文深入解析对象初始化器的使用方式,包括对象创建表达式、对象或集合初始化器、对象成员初始化器等关键概念,通过实例展示如何高效地为对象成员赋值。
324

被折叠的 条评论
为什么被折叠?



