Compartir a través de


final (Modificador)

Declara que una clase no se puede ampliar o que un método o propiedad no se puede reemplazar.

final statement

Argumentos

  • statement
    Obligatorio. Definición de una clase, un método o una propiedad.

Comentarios

El modificador final se utiliza para especificar que una clase no se puede ampliar o que un método o propiedad no se puede reemplazar. De este modo, se evita que otras clases cambien el comportamiento de la clase reemplazando funciones importantes. Los métodos con el modificador final se pueden ocultar o sobrecargar con métodos de clases derivadas.

Los métodos y propiedades de clases y las clases se pueden marcar con este modificador. Las interfaces, los campos y los miembros de interfaz no pueden tomar el modificador final.

El modificador final no puede combinarse con el otro modificador de herencia (abstract). De manera predeterminada, los miembros de clase no son ni abstract ni final. Los modificadores de herencia no se pueden combinar con el modificador static.

Ejemplo

El siguiente ejemplo muestra un uso del modificador final. Este modificador evita que un método de la clase base se reemplace con métodos de las clases derivadas.

class CBase {
   final function methodA() { print("Final methodA of CBase.") };
   function methodB() { print("Non-final methodB of CBase.") };
}

class CDerived extends CBase {
   function methodA() { print("methodA of CDerived.") };
   function methodB() { print("methodB of CDerived.") };
}

var baseInstance : CBase = new CDerived;
baseInstance.methodA();
baseInstance.methodB();

El resultado de este programa muestra que el método final no se reemplaza:

Final methodA of CBase.
methodB of CDerived.

Requisitos

Versión .NET

Vea también

Referencia

abstract (Modificador)

hide (Modificador)

override (Modificador)

var (Instrucción)

function (Instrucción)

class (Instrucción)

Conceptos

Ámbito de variables y constantes

Anotaciones de tipo

Otros recursos

Modificadores