public Butler(IWeapon weapon): this(weapon, new Communicate())
{}
这(武器,新的Communicate())是什么意思?
答案 0 :(得分:2)
它调用同一类型的另一个构造函数,传入传递给 this 构造函数的weapon
和一个新的Communicate
对象。我假设还有类似的东西:
// might actually be private
public Butler(IWeapon weapon, Communicate communicate) {...}
这种方法非常有用,它允许您拥有多个构造函数,但只将代码放在最复杂的构造函数中。所有其他构造函数只是将参数(或默认值,必要时)传递给选定的构造函数。
链接构造函数在具有: this(...)
答案 1 :(得分:1)
它在同一个类中调用构造函数但具有不同的参数,例如:
public class Test
{
public Test() : this("Richard")
{
}
public Test(string name)
{
}
}
答案 2 :(得分:0)
这意味着Butler扩展了当前类的实例,其中武器对象作为参数传递,并且Communicate对象的新实例被传递给类构造函数。
答案 3 :(得分:0)
它正在使用签名Butler(IWeapon,ICommunicate)调用另一个构造函数。