Para criar uma classe derivada em java usa-se a palavra derivada extends. Assim, para criarmos uma classe Cachorro que deriva da classe base Animal, só teriamos de fazer:
| public class Cachorro extends Animal |
Agora, todos os métodos e atributos da classe Animal também serão válidos para a classe cachorros. Está é que é a grande funcionalidadde da herança: Não precisamos reescrever os métodos que já foram criados noutras classes. Para já notar que diferentemente de outras linguagens como Python por exemplo, Java suporta apenas uma superclasse por cada subclasse, ou seja, não existe herança múltipla em Java.
Polimorfismo
Já o polimorfismo é a capacidade de tratar objectos de classes diferentes da mesma forma. Para que o Polimorfismo funcione correctamente, é necessário que as duas classes derivem de uma mesma superclasse. Por exemplo, supondo que temos uma lista de animais, contendo cachorros e gatos, podemos tratar eles da mesma forma quando se trata de alimentação, invocando para os dois o método come() com uma condição:
Se for gato, dê-lhe um rato e se for cachorro dê-lhe um osso( ou melhor dar um gato!!!).
Note que tanto a classe de cachorros quanto aos gatos derivam da classe base Animal. Este processo pode ser visto no seguinte código supondo que temos um array de animais, contendo cahorros e gatos em posições aleatórias:
|
for(int i=0;i { if(animal[i] instanceof gato) animal.come(“rato”); else animal[i].come(“osso”); }
|
Criei um projecto completo no JCreator LE para mostrar um exemplo concreto de herança e polimorfismo em Java. O programa cria três classes: uma base Animal e duas derivadas Cachorro e Gato. Mais uma classe de teste, para mostrar o efeito do polimorfismo.
Baixe o programa sobre exemplo de herança e polimorfismo em Java.






Comentários Recentes