1
resposta

[Projeto] Desafio: hora da Pratica (exércicio 2)

import br.alvaro.calcular.CalculadoraSalaRetangular;


//TIP To <b>Run</b> code, press <shortcut actionId="Run"/> or
// click the <icon src="AllIcons.Actions.Execute"/> icon in the gutter.
public class Main {
    public static void main(String[] args) {

        CalculadoraSalaRetangular calcular = new CalculadoraSalaRetangular();

        calcular.setBase(5);
        calcular.setAltura(4);


        calcular.calcularArea();
        calcular.calcularPerimetro();

    }
}
package br.alvaro.calcular;

public class CalculadoraSalaRetangular implements CalculoGeometrico {

    private int base ;
    private int altura ;


    public int getBase() {
        return base;
    }

    public void setBase(int base) {
        this.base = base;
    }

    public int getAltura() {
        return altura;
    }

    public void setAltura(int altura) {
        this.altura = altura;
    }

    @Override
    public int calcularArea() {
        int resultado = base * altura;
        System.out.println("À area do retangulo: " + resultado);
        return resultado;
    }

    @Override
    public int calcularPerimetro() {
        int resultado = 2 * (base + altura);

        System.out.println("O perimetro do retangulo: " + resultado);
        return resultado;

    }
}

package br.alvaro.calcular;

public interface CalculoGeometrico {
    int calcularArea();
    int calcularPerimetro();
}
1 resposta

Olá, Alvaro, como vai?

Sua implementação atende bem ao objetivo do exercício. A interface CalculoGeometrico foi definida corretamente com os métodos calcularArea() e calcularPerimetro(), e a classe CalculadoraSalaRetangular faz a implementação desses métodos conforme solicitado. A separação entre interface e classe concreta também está adequada, mantendo a ideia de contrato definida pela interface.

A lógica utilizada para o cálculo está correta. O cálculo da área utilizando base * altura e do perímetro com 2 * (base + altura) está consistente com a proposta do exercício. O uso de atributos privados com getters e setters também demonstra um bom uso de encapsulamento.

Obrigado por compartilhar sua solução no fórum e continue trazendo suas práticas e dúvidas. O fórum permanece à disposição para ajudar no seu aprendizado.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!