Dans le code ci-dessous, je reçois l'erreur de compilation
Error Too many arguments to 'Public Sub New()'
sur le Dim TestChild As ChildClass = New ChildClass("c")
. Je ne le reçois pas le TestChild.Method1()
même s'ils sont tous deux sur la classe de base dont j'hérite.
Public Class BaseClass
Public ReadOnly Text As String
Public Sub New(ByVal SetText As String)
Text = SetText
End Sub
Public Sub New()
Text = ""
End Sub
End Class
Public Class ChildClass
Inherits BaseClass
End Class
Public Class TestClass
Sub Test()
Dim TestChild As ChildClass = New ChildClass("c")
TestChild.Method1()
End Sub
End Class
Je pourrais changer la classe enfant en :
Public Class ChildClass
Inherits BaseClass
Public Sub New (ByVal SetText As String)
MyBase.New(SetText)
End Class
End Class
Comme suggéré ci-dessous, mais je n'ai pas à le faire pour la méthode 1 ou les autres méthodes héritées et je cherche le code le plus propre possible. Il s'agit peut-être d'une limitation du système en ce qui concerne l'héritage des déclarations New paramétrées, mais je ne trouve aucune documentation à ce sujet. Si cela est nécessaire, j'aimerais voir la documentation.