Gostaria de compartilhar um exercício extra que realizei utilizando Interface para um exemplo de Calculadora, a fim de colocar em prática a matéria estudada com exemplos que utilizam Interface.
public interface OperadorCalculadora {
public double realizarSoma();
public double realizarSubtracao();
public double realizarMultiplicacao();
public double realizarDivisao();
}
import java.util.Scanner;
public class Calculadora implements OperadorCalculadora{
private double num1;
private double num2;
private double resultado;
Scanner sc = new Scanner(System.in);
@Override
public double realizarSoma() {
System.out.println("\n===== OPERAÇÂO SOMA =====");
System.out.println("Insira o valor do primeiro número: ");
this.setNum1(sc.nextDouble());
System.out.println("Insira o valor do segundo número: ");
this.setNum2(sc.nextDouble());
this.setResultado(this.getNum1() + this.getNum2());
System.out.println("Reasultado da SOMA entre: " + this.getNum1() + " + " + this.getNum2() + " é: "
+ this.getResultado());
return this.getResultado();
}
@Override
public double realizarSubtracao() {
System.out.println("\n===== OPERAÇÂO SUBTRAÇÃO =====");
System.out.println("Insira o valor do primeiro número: ");
this.setNum1(sc.nextDouble());
System.out.println("Insira o valor do segundo número: ");
this.setNum2(sc.nextDouble());
this.setResultado(this.getNum1() - this.getNum2());
System.out.println("Reasultado da SUBTRAÇÃO entre: " + this.getNum1() + " - " + this.getNum2() +
" é: " + this.getResultado());
return this.getResultado();
}
@Override
public double realizarMultiplicacao() {
System.out.println("\n===== OPERAÇÂO MULTIPLICAÇÃO =====");
System.out.println("Insira o valor do primeiro número: ");
this.setNum1(sc.nextDouble());
System.out.println("Insira o valor do segundo número: ");
this.setNum2(sc.nextDouble());
this.setResultado(this.getNum1() * this.getNum2());
System.out.println("Reasultado da MULTIPLICAÇÃO entre: " + this.getNum1() + " * " + this.getNum2() +
" é: " + this.getResultado());
return this.getResultado();
}
@Override
public double realizarDivisao() {
System.out.println("\n===== OPERAÇÂO DIVISÃO =====");
System.out.println("Insira o valor do primeiro número: ");
this.setNum1(sc.nextDouble());
System.out.println("Insira o valor do segundo número: ");
this.setNum2(sc.nextDouble());
this.setResultado(this.getNum1() / this.getNum2());
System.out.println("Reasultado da DIVISÃO entre: " + this.getNum1() + " / " + this.getNum2() +
" é: " + this.getResultado());
return this.getResultado();
}
public double getNum1() {
return num1;
}
public void setNum1(double num1) {
this.num1 = num1;
}
public double getNum2() {
return num2;
}
public void setNum2(double num2) {
this.num2 = num2;
}
public double getResultado() {
return resultado;
}
public void setResultado(double resultado) {
this.resultado = resultado;
}
}
public class Principal {
public static void main(String[] args) {
Calculadora calculadora = new Calculadora();
calculadora.realizarSoma();
calculadora.realizarSubtracao();
calculadora.realizarMultiplicacao();
calculadora.realizarDivisao();
}
}