如何避免传递给构造函数的多个参数的赋值
本文关键字:参数 赋值 构造函数 何避免 | 更新日期: 2023-09-27 18:01:13
如果我在c#中有一个类,其中包含许多需要在构造函数中初始化的变量,例如
public class AnyClass
{
private int Var1;
private int Var2;
...
private int varN;
public AnyClass(int InVar1,int InVar2,...,InVarN)
{
Var1=InVar1;
Var2=InVar2;
...
VarN=InVarN;
//
//Code
//
}
}
是否有一种方法可以避免中间变量InVar1、InVar2等,使传递给构造函数的参数自动映射到类中包含的变量。
目前没有,C#6可能包括它。
这就是可能看起来像
之前
public class Point {
private int x, y;
public Point(int x, int y)
this.x = x;
this.y = y;
}
}
之后
public class Point(private int x, private int y) {
}
如果您不介意使用带有公共setter的属性,那么可以使用Object初始值设定项。例如
Cat cat = new Cat { Age = 10, Name = "Fluffy" };