TipoRecebido é uma
classe
TipoRecebido é uma
interface
TipoReceptor é uma
classe
TipoRecebido deve ser
uma subclasse de
TipoReceptor
TipoReceptor deve ser
Object
TipoReceptor é uma
interface
TipoRecebido deve
implementar a
interface TipoReceptor
TipoRecebido deve ser
uma sub-interface de
TipoReceptor
public class Quadrado extends Object implements Figura {
double lado;
public Quadrado(double lado) {
this.lado = lado;
}
public double calcularArea( ) {
double area = 0;
area = lado * lado;
return area;
}
}
/* A variável f do tipo Figura (que é uma interface)
* recebe qualquer objeto que seja de um tipo que
* implemente Figura */
Figura f = new Quadrado(2);
/* Uma variável do tipo Object recebe qualquer
* variável cujo tipo seja uma interface */
Object o1 = f;
}
}
Círculo
calcularArea()
calcularArea() calcularArea()
A implementação do método
calcularArea() das subclasses
sobrepõe a implementação
do mesmo método na
superclasse.