Overrides (Visual Basic)

Spécifie qu'une propriété ou procédure substitue une propriété ou procédure ayant un nom identique et ayant été héritée d'une classe de base.

Règles

  • Contexte de déclaration. Vous pouvez utiliser Overrides uniquement dans une instruction de déclaration de propriété ou de procédure.

  • Modificateurs combinés. Vous ne pouvez pas spécifier Overrides avec Shadows ou Shared dans la même déclaration. Comme un élément de substitution est implicitement substituable, vous ne pouvez pas combiner Overridable avec Overrides.

  • Correspondance entre signatures. La signature de cette déclaration doit correspondre exactement à la signature de la propriété ou de la procédure à laquelle elle se substitue. Cela signifie que les listes de paramètres doivent avoir le même nombre de paramètres, dans le même ordre, avec les mêmes types de données.

    Outre la signature, la déclaration de substitution doit également correspondre exactement à ce qui suit :

    • Niveau d'accès

    • Type de retour, le cas échéant

  • Signatures génériques. Pour une procédure générique, la signature inclut le nombre de paramètres de type. Par conséquent, la déclaration de substitution doit correspondre à la version de la classe de base également selon ce critère.

  • Correspondance supplémentaire. Cette déclaration doit non seulement correspondre à la signature de la version de la classe de base, mais aussi lui correspondre selon les critères suivants :

    • Modificateur au niveau de l’accès (tel que Public)

    • Mécanisme de passage de chaque paramètre (ByVal ou ByRef)

    • Listes de contraintes pour chaque paramètre de type d'une procédure générique

  • Occultation et substitution. L'occultation et la substitution redéfinissent toutes les deux un élément hérité, mais il existe des différences importantes entre ces deux approches. Pour plus d'informations, consultez Occultation dans Visual Basic.

Si vous utilisez Overrides, le compilateur ajoute implicitement Overloads afin que vos API de bibliothèque fonctionnent plus facilement avec C#.

Le modificateur Overrides peut être utilisé dans les contextes suivants :

Voir aussi