Partager via


Le type '<NomType>' ne peut pas hériter d'un type imbriqué dans celui-ci

Mise à jour : novembre 2007

Type '<typename>' cannot inherit from a type nested within it

Une définition d'interface ou de classe inclut une Inherits, instruction qui spécifie un type imbriqué dans celui-ci.

L'héritage doit être linéaire et non circulaire. Un type ne peut pas hériter d'un autre type qui hérite de celui-ci.

Une restriction connexe signifie qu'un type ne peut pas hériter d'un type qui n'est pas encore défini. L'héritage implique la possibilité de réutiliser les membres de la classe de base, ce qui nécessite également la définition de ces membres. Par conséquent, Visual Basic ne peut pas compiler l'exemple de code suivant.

Public Class outerClass
    ' The following statement is INVALID because innerClass is not defined.
    Inherits innerClass
    Public Class innerClass
        Public Sub doSomething()
        End Sub
    End Class
End Class

ID d'erreur : BC30908

Pour corriger cette erreur

  • Si le type héritant (type externe de l'imbrication) doit hériter du type interne, déplacez le type interne hors du type externe.

  • Si le type interne doit être imbriqué dans le type externe, le type externe ne peut pas hériter de celui-ci. Supprimez l'Inherits, instruction.

Voir aussi

Autres ressources

Héritage en Visual Basic