Partager via


abstract, modificateur

Déclare qu'une classe doit être étendue ou que l'implémentation d'une méthode ou d'une propriété doit être fournie par une classe dérivée.

abstract statement

Arguments

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

Notes

Le modificateur abstract est utilisé pour une méthode ou une propriété d'une classe qui n'a pas d'implémentation ou pour une classe qui comprend des méthodes de ce type. Une classe possédant des membres abstract ne peut pas être instanciée avec l'opérateur new. Vous pouvez dériver des classes abstract et non abstract d'une classe de base abstract.

Les méthodes et les propriétés des classes ainsi que les classes peuvent être marquées avec le modificateur abstract. Une classe doit être marquée comme abstract si elle comprend n'importe quels membres abstract. Les interfaces et les membres de celles-ci, qui sont implicitement abstract, ne peuvent pas accepter le modificateur abstract. Les champs ne peuvent pas être abstract.

Vous ne pouvez pas combiner le modificateur abstract avec l'autre modificateur d'héritage (final). Par défaut, les membres des classes ne sont ni abstract ni final. Il est impossible de combiner les modificateurs d'héritage avec le modificateur static.

Exemple

L'exemple ci-dessous illustre une utilisation du modificateur abstract :

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

Le résultat généré par ce programme est le suivant :

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

Configuration requise

Version .NET

Voir aussi

Référence

final, modificateur

static, modificateur

var, instruction

function, instruction

class, instruction

new, opérateur

Concepts

Portée des variables et des constantes

Autres ressources

Modificateurs