Documentos de Académico
Documentos de Profesional
Documentos de Cultura
01-04 Constructores
01-04 Constructores
Ejemplo:
Para la clase Estudiante se declara un constructor que reciba los valores de
Nombre, Semestre, Promedio. Y dichos valores se les asignan a las instancias
desde el momento de su creación, en sus atributos correspondientes (Nombre,
Semestre, Promedio).
public class Estudiante {
String nombre;
int semestre;
int promedio;
public Estudiante(String nombre, int semestre, int promedio){
this.nombre=nombre;
this.semestre=semestre;
this.promedio=promedio;
}
public void mostrarInfo(){
System.out.println("_____________________________________");
System.out.println("Nombre:"+nombre);
System.out.println("Promedio: "+promedio);
System.out.println("Semestre: "+semestre);
}
public static void main(String[] args) {
Estudiante e2=new Estudiante("Karla",2,90);
e2.mostrarInfo();
}
Al hacer esto, dado que ya se cuenta con un constructor que recibe dos
parámetros, Java deja de agregar el constructor por defecto (el constructor sin
parámetros).
Otra forma es Agregar un constructor por defecto (sin parámetros) el cual puede
inicializar los valores a un valor por defecto (que se desee) o bien puede estar
sin implementación (código).
public class Estudiante {
String nombre;
int semestre;
int promedio;
public Estudiante(){
}
public void mostrarInfo(){
System.out.println("______________________________________");
System.out.println("Nombre:"+nombre);
System.out.println("Promedio: "+promedio);
System.out.println("Semestre: "+semestre);
}
public static void main(String[] args) {
Estudiante e1=new Estudiante();
e1.nombre="Carlos";
e1.promedio=80;
e1.semestre=6;
e1.mostrarInfo();
}
Así mismo, dado que se cuenta con 2 constructores distintos (diferenciados por
el número y tipo de parámetros) se tendrían disponibles las dos formas de crear
instancias, ya sea con los valores por defecto o pasándolos como parámetros.
package estudiante;
public class Estudiante {
String nombre;
int semestre;
int promedio;
public Estudiante(){
}
public Estudiante(String nombre, int semestre, int promedio){
this.nombre=nombre;
this.semestre=semestre;
this.promedio=promedio;
}
public void mostrarInfo(){
System.out.println("______________________________________");
System.out.println("Nombre:"+nombre);
System.out.println("Promedio: "+promedio);
System.out.println("Semestre: "+semestre);
}
public static void main(String[] args) {
Estudiante e1=new Estudiante();
e1.nombre="Carlos";
e1.promedio=80;
e1.semestre=6;
Estudiante e2=new Estudiante("Karla",2,90);
e1.mostrarInfo();
e2.mostrarInfo();
e1.semestre++;
e1.mostrarInfo();
}
}