Saltar la navegación

3.3.- Parámetro SELF.

Un parámetro especial que puedes utilizar con los métodos MEMBER es el que recibe el nombre SELF. Este parámetro hace referencia a una instancia (objeto) del mismo tipo de objeto. Aunque no lo declares explícitamente, este parámetro siempre se declara automáticamente.

El tipo de dato correspondiente al parámetro SELF será el mismo que el del objeto original. En las funciones MEMBER, si no declaras el parámetro SELF, su modo por defecto se toma como IN. En cambio, en los procedimientos MEMBER, si no se declara, se toma como IN OUT. Ten en cuenta que no puedes especificar el modo OUT para este parámetro SELF, y que los métodos STATIC no pueden utilizar este parámetro especial.

Si se hace referencia al parámetro SELF dentro del cuerpo de un método, realmente se está haciendo referencia al objeto que ha invocado a dicho método. Por tanto, si utilizas SELF.nombre_atributo o SELF.nombre_método, estarás utilizando un atributo o un método del mismo objeto que ha llamado al método donde se encuentra utilizado el parámetro SELF.

MEMBER PROCEDURE setNombre(Nombre VARCHAR2) IS
	BEGIN
		/* El primer elemento (SELF.Nombre) hace referencia al atributo del tipo de objeto mientras que el 
		segundo (Nombre) hace referencia al parámetro del método */
		SELF.Nombre := Nombre;
	END setNombre;

Autoevaluación

Pregunta

¿Cómo se denonima a los elementos que realizan determinadas acciones sobre los objetos?

Respuestas

Atributos.

Métodos.

Tipos de datos objeto.

Parámetros.

Retroalimentación