示例代码如下: 代码如下: public class Person { public string personNam

时间:2022-05-14 07:14:21

在一个类中如果需要实现多个自界说结构函数,凡是做法是在结构函数中实现各自的业务逻辑,如果这些业务逻辑的实现并非截然差此外话,显然不切合oop编程思想,极倒霉于维护,固然,我们也可以通过将不异的逻辑部分封装成一个要领,但还有一种更为合理简单的要领,下面就通过this关键字来实现串联结构函数做一简单示例。

示例代码如下:


代码如下:


public class Person

{

public string personName;

//界说春秋为可空类型,这样就可以赋予其null值

public int? personAge;

//下面前三个结构函数都是去挪用参数最多的第四个结构函数,只取它们所需要的部分参数即可

//这样的做法就是this串联结构函数

public Person():this(“”,0)

{

}

public Person(string name):this(“evan”,null)

{

}

public Person(int age):this(“”,20)

{

}

public Person(string name, int? age)

{

this.personName = name;

//通过 ?? 判断传入的age是否null值

//如果属于null值,则赋值100

this.personAge = age ?? 100;

}

public void Display()

{

Console.WriteLine(“Name:{0},Age:{1}\n”, personName, personAge);

}

}