Para cada figura geométrica, existem algumas propriedades comuns, como nome, área etc., mas os métodos de cálculo da área são diferentes. Para simplificar o desenvolvimento, escreva um programa que defina uma superclasse para implementar o método de inserir um nome e use métodos abstratos para calcular a área.
Análise de ideias:
A chamada superclasse é uma classe pai abstrata. Para obter o nome da figura, ele pode ser alcançado através do método getClass (). GetSImplename () da classe; Método abstrato.
Defina uma subclasse para representar um círculo, o raio do círculo é obtido pela construção do método, e a área do círculo é obtida reescrevendo o método abstrato na superclasse, onde Pi pode ser representado por Math.PI.
Outros são semelhantes à etapa 2. Parâmetros como raio, comprimento e largura são obtidos através do método de construção, o que economizará problemas.
O código é o seguinte:
A cópia do código é a seguinte:
classe abstrata pública forma {
public String getName () {// Obtenha o nome do gráfico
retornar this.getClass (). getSImpleName ();
}
abstrato público duplo getarea (); // obtenha a área da figura
}
public class Circle estende a forma {
raio duplo privado;
Círculo público (raio duplo) {// Obtenha o raio do círculo
this.radius = raio;
}
@Override
public duplo getarea () {// calcule a área do círculo
retornar math.pi * math.pow (raio, 2);
}
}
classe pública retângulo estende a forma {
comprimento duplo privado;
largura dupla privada;
retângulo público (comprimento duplo, largura dupla) {// obtenha o comprimento e a largura do retângulo
this.length = comprimento;
this.width = width;
}
@Override
public duplo getarea () {// calcule a área do retângulo
comprimento de retorno * largura;
}
}
Teste de classe pública {
public static void main (string [] args) {
Círculo círculo = novo círculo (1); // Crie um objeto circular e defina o raio como 1
System.out.println ("O nome do gráfico é:" + circ.getName ());
System.out.println ("A área da figura é:" + circ.getarea ());
Retângulo retângulo = novo retângulo (1, 1); // cria um objeto retângulo e defina comprimento e largura para 1
System.out.println ("O nome do gráfico é:" + retângulo.getName ());
System.out.println ("A área da figura é:" + retângulo.getAarea ());
}
}
O efeito é mostrado na imagem: