Esta bien, como en ejercicios anteriores, ofreces un 200% mas de lo que se pide, y eso esta muy bien, aun así te haré un par de puntualizaciones:
- La primera, es que la próxima vez aparte de adjuntar el código, para que se pueda repasar directamente, intenta adjuntar también los ficheros, así nos costara menos probarlo
.
- La segunda es recomendarte el uso de anotaciones, en java, existe una serie de anotaciones para indicar que es lo que viene a continuación. En este caso te enseñaré la anotación @Override esta anotación se usa para indicar que un método será sobrescrito, se escribe justo antes del método que será sobrescrito( ver ejemplo).
public class Circulo extends Figura{
//Constructor para objetos de la clase Circulo
public Circulo(float dimensionPrincipal) {
super(dimensionPrincipal);
} // Fin del constructor Circulo
public float calcularArea() {
float radio = super.dimensionPrincipal;
return radio * radio * (float)Math.PI;
}
// No se sobreescribe el método toString(), se usará el de la clase padre.
// El atributo 'dimensionPrincipal' es accesible por declararse 'protected' en la clase padre
public String mostrarDatos() {
return super.toString() + " Area: " + calcularArea();
}
@Override
public boolean equals(Object obj) {
if (obj instanceof Circulo) {
Circulo tmpCirculo = (Circulo)obj;
if (super.dimensionPrincipal == tmpCirculo.dimensionPrincipal) { return true; }
else { return false; }
} else { return false; }
}
} // Fin de la clase Circulo
Si te fijas, justo antes de la definición del método equals, e añadido la anotación @Override, esto simplemente es como una aclaración de que ese será un método sobrescrito de la clase padre.
Por cierto, veo que ya vas metiendo comentarios para los javadoc, esta bien eso, para que vayas aprendiendo.
Y bueno no se si alguien tendrá algo más que decir... De momento esto que te comento es lo que he visto, esta currado, funciona bien y separas las distintas funciones. Muy bien, a ver si empiezas ya con cositas que den mas juego... ficheros, bases de datos, ....
Bueno un saludo y a seguir para adelante.