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
Voir aussi
Référence
Concepts
Portée des variables et des constantes