ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Contructor en Java


Enviado por   •  5 de Diciembre de 2015  •  Apuntes  •  1.758 Palabras (8 Páginas)  •  253 Visitas

Página 1 de 8

Contructor en Java.

Un Constructor   es una función, método, etc,   de las clases, la cual es llamada automáticamente cuando se crea un objeto de esa clase.
Por ser métodos, los constructores también aceptan parámetros. Cuando en una clase no especificamos ningún tipo de constructor, el compilador añade uno público por omisión sin parámetros, el cual NO hace nada.

public class Arboles   {
    public Arboles() {
      System.out.println("Un árbol genérico");
    }
    public Arboles(String tipo) {
    System.out.println("Un árbol tipo " + tipo);
    }
    public Arboles(int altura) {
    System.out.println("Un árbol de " + altura + " metros");
  }
    public Arboles(int altura,String tipo) {
    System.out.println("Un " + tipo + " de " + altura + " metros");
  }
    public static void main(String args[]) {
  Arboles arbol1 = new Arboles(4);
        Arboles arbol2 = new Arboles("Roble");
        Arboles arbol3 = new Arboles();
        Arboles arbol4 = new Arboles(5,"Pino");
    }
}

Características de los Constructores
  1.     Un constructor, tiene el mismo nombre de la clase a la cual pertenece.
  2.     No puede ser Heredado.
  3.     No retorna ningún valor (Ni void), por lo cual no debe especificarse ningún tipo de dato.

Destructor:

Un destructor es un método de la clase que sirve para realizar una serie deoperaciones cuando un objeto perteneciente a la clase deja de existir. Operaciones típicas en los objetos cuando desaparecen son la liberación de recursos del sistema que tuviera asignados el objeto: liberación de memoria que pudiera tener reservada el objeto, cierre de los ficheros y sockets que tuviera abiertos, etc.. En Java existe un

Thread 

del sistema “

Garbage collector 

” literalmente:  Recolector de Basura, que se ejecuta regularmente para liberar la memoria asignada a  objetos que ya no se necesitan

28

. A pesar de ello, puede ser necesario realizar algunas operaciones adicionales. Para ello hay que declarar un método dela siguiente forma

Metodos finalizadores
Los
 finalizadores son métodos que completan la labor del garbage collector. Un finalizador es un método que es llamado automáticamente cuando se va a destruir un objeto (antes de que la memoria sea liberada automáticamente por el sistema).

Se usan para ciertas operaciones de terminación que difieren de la liberación de memoria (por ejemplo: el cierre de archivos o conexiones de red, liberar memoria reservada por funciones nativas, etc.).

El garbage collector sólo libera la memoria reservada con new. Si se ha reservado memoria por ejemplo usando funciones nativas en C (como la función malloc()), esta memoria hay que liberarla explícitamente usando el método finalize().

Un finalizador es un método de objeto (no static), sin argumentos sin valor de retorno (void), y que siempre tiene el nombre finalize(). Los finalizadores son llamados de modo automático siempre que se hayan definido por el programador de la clase.

Metodos sobrecargados.

Se llaman métodos sobrecargados a métodos con el mismo nombre en una clase. Para saber qué método se ejecuta cuando se le llama, se decide por el tipo de los parámetros que se le pasan. Haremos una clase de ejemplo con un método sobrecargado. El método se llamará imprimirLista(). Habrá tres métodos imprimirLista() y la forma de distinguirlos es por el tipo del parámetro que se le pasa: Integer[], Double[] o Character[].

La clase MetodosSobrecargados contiene tres métodos sobrecargados llamados imprimirLista. Estos métodos imprimen en representación de String los elementos de un array de Integer, una array de double o un array de Character. El tipo del parámetro es el que decidirá a qué método se llama.

// Ejemplo de metodos sobrecargados

// Uso de metodos sobrecargados para imprimer listas de diferentes tipos

public class MetodosSobrecargados

{

   // metodo imprimirLista que imprime una lista de Integer

   public static void imprimirLista( Integer[] lista )

   {  for ( Integer elemento: lista )

    System.out.printf( "%s ", elemento);

      System.out.println();

   } // fin metodo imprimirLista

   // metodo imprimirLista que imprime una lista de Double

   public static void imprimirLista( Double[] lista )

   {

      for ( Double elemento: lista )

         System.out.printf( "%s ", elemento );

      System.out.println();

   } // fin metodo imprimirLista

   // metodo imprimirLista que imprime unalista de Character

   public static void imprimirLista( Character[] lista)

   {

      for ( Character elemento : lista )

         System.out.printf( "%s ", elemento);

      System.out.println();

   } // fin metodo imprimirLista

   public static void main( String args[] )

   {

      // creacion de listas de Integer, Double y Character

      Integer[] lista_integer = { 1, 2, 3, 4, 5, 6 };

      Double[] lista_double = { 1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7 };

      Character[] lista_caracter = { 'H', 'O', 'L', 'A' };

      // Llamada a imprimirLista() de Integer[]

      System.out.println( "la lista de Integer  contiene:" );

      imprimirLista( lista_integer );

      // Llamada a imprimirLista() de Double[]

      System.out.println( "\nla lista de doble contiene:" );

      imprimirLista( lista_doble); // pass a Double lista de

      // Llamada a imprimirLista() de Character[]

...

Descargar como (para miembros actualizados)  txt (10.7 Kb)   pdf (154.7 Kb)   docx (14.7 Kb)  
Leer 7 páginas más »
Disponible sólo en Clubensayos.com