17 oct 2014

Constructores en Java


Un constructor es un método que se ejecuta automáticamente siempre que se declara un objeto de una clase, bien cuando se crea el objeto directamente (declaración de variables matriciales estáticas y automáticas) o cuando se crea dinámicamente, mediante el operador new

Reglas para la creación de un constructor:

o   El nombre de un constructor es exactamente el nombre de la clase.
o   Los constructores no tienen tipo de devolución, ni siquiera void.
o   Pueden recibir, o no, argumentos.
o   Las clases pueden tener uno o más constructores, normalmente con el especificador de acceso public, basándose en la sobrecarga de métodos.

Se denomina, constructor por defecto de la clase, al que no tiene argumentos.

El lenguaje Java carece de destructores,  por lo que la memoria asociada a un objeto será liberada de forma automática por el recolector de basura (garbage collector).

Ejemplo de tres constructores para una misma clase:

    public Ficha() {
        nombre = "Nombre";
        apellidos = "Apellidos";
        curso = "2011";
        DNI = "01234567X";
        grupoPracticas = "X7";
        numNotas = 5;
        calificaciones = new float[numNotas];
    for (int i = 0; i < numNotas; i++) {
            calificaciones[i] = i;
        }
        comentarios = "Comentarios";
    }

    public Ficha(Ficha orig) {
        nombre = orig.nombre;
        apellidos = orig.apellidos;
        curso = orig.curso;
        DNI = orig.DNI;
        grupoPracticas = orig.grupoPracticas;
        numNotas = orig.numNotas;
        calificaciones = orig.calificaciones.clone();
        comentarios = orig.comentarios;
    }

    public Ficha(String nom, String ape, String cur,
            String ID, String gp, float[] cal, int num, String com) {
        nombre = nom;
        apellidos = ape;
        curso = cur;
        DNI = ID;
        grupoPracticas = gp;
        numNotas = num;
        calificaciones = cal.clone();
        comentarios = com;
    }


No hay comentarios:

Publicar un comentario