this关键字还有一种特别用途,那就是串联构造函数调用。
在多构造函数的情形下,很容易出现冗余的验证逻辑,这时就可以使用构造函数链进行处理了。
class Test
{
public int ti;
public string ts;
public Test(){}
public Test(int i):this(i,""){}
public Test(string s):this(0,s){}
public Test(int i,string s)
{
if(i>10)
{i=10;}
ti=i;
ts=s;
}
}