我继承自 ListBox。我是否需要显式调用基本构造函数?
public class MyListBox : ListBox
{
public MyListBox() : base()
{
}
// or
public MyListBox()
{
}
}
最佳答案
您列出的两个选项将编译为相同的代码。
包含 :base()
的唯一原因是明确表示您在设计时调用基类默认构造函数而不是其他一些构造函数。如果停止,这会自动发生。因此,这是完全可选的。
但是,如果您想使用基类的无参数构造函数以外的构造函数,则必须明确说明这一点,即:
public MyListBox() : base("Foo")
{ }
这将显式使用接受字符串作为参数的构造函数。
关于c# - 从框架控件继承时,我应该调用基本构造函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10884246/