Programa

Solo disponible en BuenasTareas
  • Páginas : 5 (1117 palabras )
  • Descarga(s) : 0
  • Publicado : 9 de marzo de 2011
Leer documento completo
Vista previa del texto
DEFINICIÓN DE CONSTRUCTORES Y DESTRUCTORES DE UNA CLASE.
Definicion:
El constructor de una clase es un método estándar para inicializar los objetos de esa clase. Es una función que se ejecuta siempre al crear un objeto. Los constructores de una clase tienen siempre el nombre de la clase y no tiene ningún valor devuelto (ni siquiera void). Si el usuario no declara un constructor el sistema (Eneste caso Java) siempre crea un constructor por defecto sin argumentos. En el momento en el que el usuario define un constructor el constructor del sistema se elimina y es sustituido por el, o los, constructores definidos (al tratarse de un método más

el constructor puede sobrecargarse).
Para inicializar un objeto basta con llamar a su constructor después de la palabra reservada new yasignarlo a una referencia declarada previamente.Un constructor es un método que se ejecuta cada vez que se crea un objeto, el propósito de este procedimiento es el de inicializar los datos del objeto. El nombre del constructor siempre es igual al nombre de la clase.
Se invoca automáticamente cuando new crea un objeto de esa clase.
• Los constructores se declaran en el momento de definir la clase.class A {
int x, y;
A() { x=0; y=0; } // el constructor
}

A a= new A();
a.Print(); // 0 0
• El constructor puede tener parámetros. En este caso, se deben colocar los argumentos respectivos al crear el objeto:
class A {
int x,y;
A(int ix, int iy)
{ x=ix; y=iy; } // el constructor

}

A a= new A(1,2);
a.Print(); // 1 2

a= new A(); // error, hay que colocar
// los argumentos
a.A(1,2); // error, no se puede// invocar el constructor
• Se pueden colocar varios constructores. Durante la creación de un objeto, se invoca aquel que calza con los argumentos dados:
class A {
int x, y;
A() { x=0; y= 0; }
A(int ix, int iy)
{ x=ix; y=iy; }
A(A from){ x= from.x; y= from.y; }
}
A a1= new A();
a1.Print(); // 0 0
A a2= new A(1,2);
a2.Print(); // 1 2
A a3= new A(a2);
a3.Print(); // 1 2
Definición:
Un destructor es un método que se invoca automáticamente cuando el objeto se destruye. JAVA no posee destructores, porquetiene recolección de basuras. C++ posee destructores. Un destructor es un método que es ejecutado cada vez que se destruye (se elimina de RAM) un objeto, el objetivo de este método es el de eliminar toda la memoria que ocupó un objeto. En JAVA no es necesaria la definición de destructores (es más no existen), pues el mismo lenguaje se encarga de la eliminación y liberación de la memoria ocupada porun objeto, esto se realiza cada vez que un objeto pierde todas sus referencias.
En resumen es un método de clase que sirve para realizar ciertas operaciones necesarias al dejar de existir un objeto, por ejemplo, cerrar conexiones de una comunicación, cerrar ficheros, etc.
Java dispone de un elemento denominado recolector de basura (garbage collector) que se encarga de liberar memoria asignadaa objetos que ya no se utilizan, aún así en ocasiones será necesario disponer de una función que realice operaciones adicionales a la mera liberación de memoria. Para este fin se crea un método, denominado finalize, con las siguientes características:
protected void finalize() throws throwable
{
… cuerpo del destructor
}...
tracking img