Partager via


Inherits Statement

Oblige la classe ou l’interface actuelle à hériter des attributs, variables, propriétés, procédures et événements d’une autre classe ou d’un autre ensemble d’interfaces.

Syntaxe

Inherits basetypenames  

Éléments

Terme Définition
basetypenames Obligatoire. Nom de la classe dont cette classe dérive.

-ou-

Noms des interfaces dont cette interface dérive. Utilisez des virgules pour séparer plusieurs noms.

Notes

Si elle est utilisée, l’instruction Inherits doit être la première ligne non vide et sans commentaires dans une définition de classe ou d’interface. Elle doit suivre immédiatement l’instruction Class ou Interface.

Vous pouvez utiliser Inherits uniquement dans une classe ou une interface. Cela signifie que le contexte de déclaration pour un héritage ne peut pas être un fichier source, un espace de noms, une structure, un module, une procédure ou un bloc.

Règles

  • Héritage de classe. Si une classe utilise l’instruction Inherits, vous ne pouvez spécifier qu’une seule classe de base.

    Une classe ne peut pas hériter d’une classe imbriquée dans celle-ci.

  • Héritage d’interface. Si une interface utilise l’instruction Inherits, vous pouvez spécifier une ou plusieurs interfaces de base. Vous pouvez hériter de deux interfaces même si chacune définit un membre portant le même nom. Dans ce cas, le code d’implémentation doit utiliser la qualification de nom pour spécifier le membre qu’il implémente.

    Une interface ne peut pas hériter d’une autre interface avec un niveau d’accès plus restrictif. Par exemple, une interface Public ne peut pas hériter d’une interface Friend.

    Une interface ne peut pas hériter d’une interface imbriquée dans celle-ci.

Un exemple d’héritage de classe dans le .NET Framework est la classe ArgumentException, qui hérite de la classe SystemException. Cela fournit à ArgumentException toutes les propriétés et procédures prédéfinies requises par les exceptions système, telles que la propriété Message et la méthode ToString.

Un exemple d’héritage d’interface dans le .NET Framework est l’interface ICollection, qui hérite de l’interface IEnumerable. Cela entraîne que ICollection hérite de la définition de l’énumérateur requis pour parcourir une collection.

Exemple 1

L’exemple suivant utilise l’instruction Inherits pour montrer comment une classe nommée thisClass peut hériter de tous les membres d’une classe de base nommée anotherClass.

Public Class thisClass
    Inherits anotherClass
    ' Add code to override, overload, or extend members
    ' inherited from the base class.
    ' Add new variable, property, procedure, and event declarations.
End Class

Exemple 2

L’exemple suivant montre l’héritage de plusieurs interfaces.

Public Interface thisInterface
    Inherits IComparable, IDisposable, IFormattable
    ' Add new property, procedure, and event definitions.
End Interface

L’interface nommée thisInterface inclut désormais toutes les définitions dans les interfaces IComparable, IDisposable et IFormattable Les membres hérités fournissent respectivement pour la comparaison spécifique au type de deux objets, la libération des ressources allouées et l’expression de la valeur d’un objet en tant que String. Une classe qui implémente thisInterface doit implémenter chaque membre de chaque interface de base.

Voir aussi