Olá, copiei as classes dadas no enunciado porém está dando erro na hora de complicar, segue as classes e interface:
interface AreaCalculavel {
double calculaArea();
}
class Retangulo {
private int largura;
private int altura;
public Retangulo(int largura, int altura) {
this.largura = largura;
this.altura = altura;
}
public double calculaArea() {
return this.largura * this.altura;
}
}
public class teste {
public static void main(String[] args) {
AreaCalculavel a = new Retangulo(3,2);
System.out.println(a.calculaArea());
}
}
Na classe de teste, o compilador recomenda que eu faça :
AreaCalculavel a = (AreaCalculavel) new Retangulo(3,2);
porém continua dando erro :
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - incompatible types: Retangulo cannot be converted to AreaCalculavel
at teste.main(teste.java:14)