Freigeben über


override-Modifizierer

Aktualisiert: November 2007

Deklariert, dass eine Methode oder Eigenschaft eine Methode oder Eigenschaft der Basisklasse überschreibt.

override statement

Argumente

  • statement
    Erforderlich. Die Definition einer Methode oder Eigenschaft.

Hinweise

Mit dem override-Modifizierer wird eine Methode gekennzeichnet, die eine Methode der Basisklasse überschreibt. Die Kennzeichnung einer Methode mit dem override-Modifizierer ist nur zulässig, wenn die Basisklasse über einen Member mit derselben Signatur verfügt.

Mit dem override-Modifizierer können Methoden und Eigenschaften von Klassen gekennzeichnet werden. Klassen, Felder, Schnittstellen und Member von Schnittstellen können nicht mit dem override-Modifizierer gekennzeichnet werden.

Der override-Modifizierer darf nicht mit dem anderen Versionssicherheitsmodifizierer (hide) kombiniert werden. Die Versionssicherheitsmodifizierer können nicht mit dem static-Modifizierer kombiniert werden. In der Standardeinstellung wird eine Methode der Basisklasse überschrieben, wenn sie nicht mit dem final-Modifizierer gekennzeichnet ist. final-Methoden können nicht überschrieben werden. Im Versionssicherheitsmodus muss grundsätzlich ein Versionssicherheitsmodifizierer verwendet werden, wenn eine Methode der Basisklasse überschrieben wird.

Beispiel

Das folgende Beispiel veranschaulicht die Verwendung des override-Modifizierers. Die mit dem override-Modifizierer gekennzeichnete Methode der abgeleiteten Klasse überschreibt die Methode der Basisklasse. Die mit dem hide-Modifizierer gekennzeichnete Methode überschreibt die Methode der Basisklasse nicht.

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();

Die Ausgabe des Programms bestätigt, dass eine override-Methode eine Methode der Basisklasse überschreibt:

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

Anforderungen

Version .NET

Siehe auch

Konzepte

Gültigkeitsbereich von Variablen und Konstanten

Typanmerkung

Referenz

hide-Modifizierer

var-Anweisung

function-Anweisung

class-Anweisung

Weitere Ressourcen

Modifizierer