Veo esto en la diapositiva que tiene como objetivo ilustrar constructores. Ahora estoy confundido porque tiene dos constructores que tienen el mismo trabajo y aceptan configurar gpa en cero en el segundo. ¿Por qué el codificador necesita repetir this.id = id; this.name = name;
nuevamente? ¿Por qué esta clase incluso necesita dos constructores?¿Por qué esta clase tiene dos constructores?
class Student{
private int id;
private String name;
private double gpa;
public Student(int id, String name, double gpa){
this.id = id; this.name = name; this.gpa = gpa;
}
public Student(int id, String name){
this.id = id; this.name = name; gpa = 0.0;
}
public boolean equals(Student other){
return id == other.id && name.equals(other.name)
&& gpa == other.gpa;
}
public String toString(){
return name + " " + id + " " + gpa;
}
public void setName(String name){
this.name = name;
}
public double getGpa(){
return gpa;
}
}
estaría mejor encadenamiento: 'Estudiante pública (int id, String nombre) {este (id, nombre, 0.0); } '- de lo contrario, los cambios de código deben realizarse dos veces, ¡y eso es malo! – corsiKa