【发布时间】:2011-03-17 06:05:40
【问题描述】:
如何以及何时在 C# 中调用基类构造函数
【问题讨论】:
标签: c#
如何以及何时在 C# 中调用基类构造函数
【问题讨论】:
标签: c#
你可以像这样调用基类构造函数:
// Subclass constructor
public Subclass()
: base()
{
// do Subclass constructor stuff here...
}
如果所有子类都需要设置某些东西,您将调用基类。需要初始化的对象等...
希望这会有所帮助。
【讨论】:
public Subclass() {} -- 这与您的示例具有完全相同的行为。
从子类构造函数中调用基类构造函数通常是一个好习惯,以确保基类在子类之前初始化自身。您使用base 关键字来调用基类构造函数。请注意,您还可以使用 this 关键字在您的类中调用另一个构造函数。
下面是一个例子:
public class BaseClass
{
private string something;
public BaseClass() : this("default value") // Call the BaseClass(string) ctor
{
}
public BaseClass(string something)
{
this.something = something;
}
// other ctors if needed
}
public class SubClass : BaseClass
{
public SubClass(string something) : base(something) // Call the base ctor with the arg
{
}
// other ctors if needed
}
【讨论】: