Buenas noches, En la clase 4 sobre "Herencia y el uso de los constructores" cuando se toca el tema de la "Sobreescritura de métodos" se señala que la anotación @Override "Se utiliza para sobrescribir el método de la clase madre, lo que indica que se ha modificado el método original" (v. ejercicios 04 y 06), y se da un ejemplo:
@Override
public boolean retirar(double valor){
double valorARetirar = valor + 0.2;
return super.retirar(valorARetirar);
}
Ahora bien, en la clase 2 tambien se toco el tema de la sobreescritura de método pero en esa oportunidad no se indico como necesario utilizar la anotación @Override ". En ese segundo caso, el siguiente método de la clase Funcionario:
public double getBonificacion() {
return this.salario * 0.05;
}
fue sobreescrito por el siguiente método de la clase Gerente:
//sobreescritura de metodo
public double getBonificacion() {
System.out.println("EJECUTANDO DESDE GERENTE");
return super.getSalario()+
super.getBonificacion();
}
En este segundo caso no se indico como necesario utilizar la anotación @Override y además el codigo funciono correctamente. No comprendo la razon por la cual en el ejemplo de la clase 4 se debe utilizar la anotación @Override y en el segundo ejemplo, el de la clase 2, por el contrario no fue necesario.
Otra duda mas sobre el tema ¿si la anotación @Override no es generada por el Eclipse se debe escribir manualmente de la misma manera?
Gracias! Saludos!