Share via


super, instruction

Fait référence à l'objet de base de l'objet en cours. L'instruction peut être utilisée dans deux contextes.

// Syntax 1: Calls the base-class constructor with arguments.
super(arguments)

// Syntax 2: Accesses a member of the base class.
super.member

Arguments

  • arguments
    Facultatif dans la syntaxe 1. Liste délimitée par des virgules d'arguments du constructeur de classe de base.

  • member
    Requis dans la syntaxe 2. Membre de la classe de base auquel vous souhaitez accéder.

Notes

Le mot clé super est généralement utilisé dans l'une des deux situations suivantes. Vous pouvez l'utiliser pour appeler explicitement le constructeur de classe de base avec un ou plusieurs arguments. Vous pouvez également l'employer pour accéder à des membres de la classe de base qui ont été substitués par la classe active.

Exemple 1

Dans l'exemple suivant, super fait référence au constructeur de la classe de base.

class baseClass {
   function baseClass() {
      print("Base class constructor with no parameters.");
   }
   function baseClass(i : int) {
      print("Base class constructor. i is "+i);
   }
}
class derivedClass extends baseClass {
   function derivedClass() {
      // The super constructor with no arguments is implicitly called here.
      print("This is the derived class constructor.");
   }
   function derivedClass(i : int) {
      super(i);
      print("This is the derived class constructor.");
   }
}

new derivedClass;
new derivedClass(42);

Ce programme affiche le résultat suivant lorsqu'il est exécuté.

Base class constructor with no parameters.
This is the derived class constructor.
Base class constructor. i is 42
This is the derived class constructor.

Exemple 2

Dans l'exemple suivant, super permet d'accéder à un membre substitué de la classe de base.

class baseClass {
   function test() {
      print("This is the base class test.");
   }
}
class derivedClass extends baseClass {
   function test() {
      print("This is the derived class test.");
      super.test(); // Call the base class test.
   }
}

var obj : derivedClass = new derivedClass;
obj.test();

Ce programme affiche le résultat suivant lorsqu'il est exécuté.

This is the derived class test.
This is the base class test.

Configuration requise

Version .NET

Voir aussi

Référence

new, opérateur

this, instruction