该链接表示,如果在基类中有一个带参数的显式构造函数,并且没有无参数构造函数,那么就不能让派生类没有构造函数。因为VB。NET无法为派生类创建隐式构造函数。
如果您没有为这两个函数编写任何构造函数,那么它是完全有效的。
public class Base
End Class
Public Class Derived
Inherits Base
End Class
public class Base
Public sub New(ByVal Item As Integer)
End Sub
End Class
Public Class Derived
Inherits Base
End Class
为了克服这个问题,您可以在派生类上声明一个默认构造函数,该派生类使用默认值调用基类构造函数。
public class Base
Public sub New(ByVal Item As Integer)
End Sub
End Class
Public Class Derived
Inherits Base
Public Sub New()
MyBase.New(5)
End Sub
End Class