Es una subrutina cuya misión es inicializar un objeto de una clase.
Su misión es reservar memoria e inicializar las variables miembro de la clase.
Los constructores no tienen valor de retorno, ni siquiera "void".
El nombre tiene que ser el mismo que el de la clase.
Una clase puede tener varios constructores, se diferencian así mismo por la cantidad de argumentos y su tipo
Todas las clases llevan constructor, ya sea explicito o implícito.
Un constructor de una clase puede llamar a otro constructor de la misma clase haciendo referencia con la palabra clave this. Esta palabra clave solo puede aparecer en la primera linea de código de un constructor.
Un constructor de una subclase puede llamar a otro constructor de su superclase con la palabra super();
Los constructores pueden tener cualquiera de los 4 tipos de modificadores de acceso (public, protected, default o package y private)
class Persona { //ATRIBUTOS private String nombre; private int edad; private String empleo; private double salario;
//CONSTRUCTORES public Persona() {} //CONSTRUCTOR SIN PARÁMETROS public Persona(String nombre, int edad, String empleo, double salario) { asignarNombre(nombre); asignarEdad(edad); asignarEmpleo(empleo); asignarSalario(salario); } //... } { //ATRIBUTOS private String nombre; private int edad; private String empleo; private double salario;
//CONSTRUCTORES public Persona() {} //CONSTRUCTOR SIN PARÁMETROS public Persona(String nombre, int edad, String empleo, double salario) { asignarNombre(nombre); asignarEdad(edad); asignarEmpleo(empleo); asignarSalario(salario); } //... }