Partager via


hide, modificateur

Déclare qu'une méthode ou une propriété masque une méthode ou une propriété d'une classe de base.

hide statement

Arguments

  • statement
    Obligatoire. Une définition de propriété ou de méthode.

Notes

Le modificateur hide est utilisé pour une méthode qui en masque une autre dans une classe de base. Vous ne pouvez pas utiliser le modificateur hide pour une méthode à moins que la classe de base ne possède un membre disposant de la même signature.

Les méthodes et les propriétés des classes peuvent être marquées avec le modificateur hide. Les classes, les champs, les interfaces et les membres d'interfaces ne peuvent pas accepter le modificateur hide.

Vous ne pouvez pas associer le modificateur hide avec l'autre modificateur de version sécurisée (override). Il est impossible de combiner les modificateurs de version sécurisée avec le modificateur static. Par défaut, une méthode se substitue à une méthode de classe de base à moins que cette dernière ne soit marquée avec le modificateur final. Vous ne pouvez pas masquer une méthode abstract sauf si vous fournissez une implémentation explicite pour la méthode de base abstract. Lors d'une exécution en mode version sécurisée, vous devez utiliser un des modificateurs de version sécurisée chaque fois qu'une méthode de classe de base est substituée.

Exemple

L'exemple ci-dessous illustre une utilisation du modificateur hide. La méthode de la classe dérivée marquée avec le modificateur hide ne se substitue pas à la méthode de classe de base. La méthode marquée avec le modificateur override est substituée à la méthode de classe de base.

class CBase {
   function methodA() { print("methodA of CBase.") };
   function methodB() { print("methodB of CBase.") };
}

class CDerived extends CBase {
   hide function methodA() { print("Hiding methodA.") };
   override function methodB() { print("Overriding methodB.") };
}


var derivedInstance : CDerived = new CDerived;
derivedInstance.methodA();
derivedInstance.methodB();

var baseInstance : CBase = derivedInstance;
baseInstance.methodA();
baseInstance.methodB();

Le résultat de ce programme montre qu'une méthode de classe de base n'est pas substituée par une méthode masquée.

Hiding methodA.
Overriding methodB.
methodA of CBase.
Overriding methodB.

Configuration requise

Version .NET

Voir aussi

Référence

override, modificateur

static, modificateur

var, instruction

function, instruction

class, instruction

/versionsafe

Concepts

Portée des variables et des constantes

Annotation de type

Autres ressources

Modificateurs