Partilhar via


demonstrativo super

Refere-se ao objeto base do objeto corrente.Isso pode ser usado em dois contextos.

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

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

Argumentos

  • arguments
    Opcional na sintaxe 1.Uma lista delimitada por vírgulas dos argumentos para o construtor da classe base.

  • member
    Necessário na sintaxe 2.Membro da classe base para acesso.

Comentários

The Super palavra-chave normalmente é usada em uma das duas situações.Você pode usá-lo para chamar explicitamente o construtor da classe de base com um ou mais argumentos.Você também pode usá-lo para acessar membros de classe de base que foram substituídos pela classe corrente.

Exemplo 1

No exemplo a seguir, Super refere-se para o construtor da classe 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);

Este programa exibe a seguinte saída quando executado.

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

Exemplo 2

No exemplo a seguir, Super permite o acesso a um membro substituído da classe 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();

Este programa exibe a seguinte saída quando executado.

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

Requisitos

Versão .NET

Consulte também

Referência

Operador novo

Esta política