Para cada figura geométrica, hay algunas propiedades comunes, como el nombre, el área, etc., pero los métodos de cálculo del área son diferentes. Para simplificar el desarrollo, escriba un programa que define una superclase para implementar el método de ingresar un nombre y usar métodos abstractos para calcular el área.
Análisis de ideas:
La llamada superclase es una clase madre abstracta. Para obtener el nombre de la figura, se puede lograr a través del método getClass (). Método abstracto.
Defina una subclase para representar un círculo, el radio del círculo se obtiene construyendo el método, y el área del círculo se obtiene reescribiendo el método abstracto en la superclase, donde PI puede representarse mediante Math.Pi.
Otros son similares al paso 2. Parámetros como el radio, la longitud y el ancho se obtienen a través del método de construcción, lo que ahorrará problemas.
El código es el siguiente:
La copia del código es la siguiente:
Forma de clase abstracta pública {
public String getName () {// Obtener el nombre del gráfico
devuelve this.getClass (). getSimplename ();
}
Public Abstract Double GetArea (); // Obtener el área de la figura
}
El círculo de clase pública extiende la forma {
Radio doble privado;
Círculo público (radio doble) {// Obtener el radio del círculo
this.radius = radio;
}
@Anular
public Double getArea () {// Calcule el área del círculo
return math.pi * math.pow (radio, 2);
}
}
El rectángulo de clase pública extiende la forma {
doble longitud privada;
Doble ancho privado;
rectángulo público (doble longitud, doble ancho) {// Obtenga la longitud y el ancho del rectángulo
this.length = longitud;
this.width = ancho;
}
@Anular
public Double getArea () {// Calcule el área del rectángulo
Longitud de retorno * Ancho;
}
}
Prueba de clase pública {
public static void main (string [] args) {
Círculo círculo = nuevo círculo (1); // Crear un objeto circular y establecer el radio en 1
System.out.println ("El nombre del gráfico es:" + circle.getName ());
System.out.println ("El área de la figura es:" + circle.getArea ());
Rectángulo rectángulo = nuevo rectángulo (1, 1); // Crear un objeto rectángulo y establecer longitud y ancho en 1
System.out.println ("El nombre del gráfico es:" + rectangle.getName ());
System.out.println ("El área de la figura es:" + rectangle.getArea ());
}
}
El efecto se muestra en la imagen: