Neste exemplo, apesar de ambos objetos serem declarados como Ponto, o segundo é de fato uma instância da subclasse Circulo e portanto, quando for chamado o método emPalavras deste objeto, será executado o método da classe Circulo (que retorna informação também sobre o raio). Este recurso da linguagem é chamado polimorfismo, pois ele faz com que objetos declarados como instâncias de uma classe (no caso, a classe Ponto) possam assumir diversas formas (no caso, um deles é um mero Ponto e o outro é um Circulo, que é de verdade um ponto incrementado).
Podemos então declarar que a classe Circulo construida acima implementa
esta interface:
protected double l;
public Quadrado(){
abstract double ahrea( );
}
protected double l;
public Quadrado(){