Freigeben über


abstract-Modifizierer

Aktualisiert: November 2007

Deklariert, dass eine Klasse erweitert oder die Implementierung einer Methode oder Eigenschaft von einer abgeleiteten Klasse bereitgestellt werden muss.

abstract statement

Argumente

  • statement
    Erforderlich. Die Definition einer Klasse, Methode oder Eigenschaft.

Hinweise

Der abstract-Modifizierer wird für eine Methode oder Eigenschaft einer Klasse ohne Implementierung verwendet, oder für eine Klasse, die solche Methoden enthält. Ein Klasse mit abstrakten Membern kann nicht mit dem new-Operator instanziiert werden. Sie können sowohl abstrakte als auch nicht abstrakte Klassen von einer abstrakten Basisklasse ableiten.

Mit dem abstract-Modifizierer können Klassen sowie Methoden und Eigenschaften von Klassen gekennzeichnet werden. Eine Klasse muss als abstract gekennzeichnet werden, wenn sie abstract-Member enthält. Da Schnittstellen und Member von Schnittstellen implizit abstrakt sind, können sie nicht mit dem abstract-Modifizierer gekennzeichnet werden. Felder können nicht abstract sein.

Der abstract-Modifizierer darf nicht mit dem anderen Vererbungsmodifizierer (final) kombiniert werden. In der Standardeinstellung sind Klassenmember weder abstract noch final. Die Vererbungsmodifizierer können nicht mit dem static-Modifizierer kombiniert werden.

Beispiel

Das folgende Beispiel veranschaulicht die Verwendung des abstract-Modifizierers:

// CAnimal is an abstract base class.
abstract class CAnimal {
   abstract function printQualities();
}
// CDog and CKangaroo are derived classes of CAnimal.
class CDog extends CAnimal {
   function printQualities() {
      print("A dog has four legs.");
   }
}
class CKangaroo extends CAnimal {
   function printQualities() {
      print("A kangaroo has a pouch.");
   }
}

// Define animal of type CAnimal.
var animal : CAnimal;

animal = new CDog;
// animal uses printQualities from CDog.
animal.printQualities();

animal = new CKangaroo;
// animal uses printQualities from CKangaroo.
animal.printQualities();

Ausgabe dieses Programms:

A dog has four legs.
A kangaroo has a pouch.

Anforderungen

Version .NET

Siehe auch

Konzepte

Gültigkeitsbereich von Variablen und Konstanten

Referenz

final-Modifizierer

static-Modifizierer

var-Anweisung

function-Anweisung

class-Anweisung

new-Operator

Weitere Ressourcen

Modifizierer