public MyDoubleLink(List<T> list)
{
//TODO:实现构造函数:
}
public MyDoubleLink(T data)
{
//TODO:实现构造函数
}
首先,同名通常说明两个函数的功能是一样。再看函数的区别,主要就是在参数,也就是说,不同的参数类型对应不同的处理方法。我记得在C#的基础教程中,通常也不会使用函数这种叫法,而是使用方法。这样就好理解了,两个同名的方法(函数)是用来处理不同传入参数而设计的。举个例子,你进到一个服装店,营业员首先就会根据你的性别,引导你去男款区或是女款区,然后根据男人和女人不同的购物习惯给你推荐衣服,最终让顾客得到最舒适的购物体验,以达到销售的目的。
在以上的例子中,服装店就是你的类,顾客进店就要调用引流服务的方法(函数),为了有效促销,你得根据不同性别的顾客设计两个不同的引流服务方法,名字都是引流服务,但处理的流程完成不同,所以你只能设计为两套流程(方法)。至于合适那套流程(方法),要等顾客来的时候才知道,也就是程序调用的时候才确定。
具体到代码中,或许一般的方法(函数)你可以用不同的名字来区别,但是对于构造函数,基本只能重载,没有太好的办法。
这两个构造函数的区别是参数不同,第一个参数是列表,第二个参数是对象,实现这两个构造函数,就可以实现通过一个列表构造mydoublelink类对象,和通过一个对象构造
这体现了方法的重载特性,就是方法名称一样,但参数列表不同,作用就是在初始化(构造函数作用就是初始化变量)时可以初始化不同的数据。