Seminários avançados ii (java)
Anderson P. S. de Oliveira
Prof. Francisco de A. Neto
Bacharelado em Sistemas de Informação – Seminários Avançados II
23/06/2012
1 HERANÇA
A herança é a principal característica de distinção entre um sistema de programação orientado a objeto e outros sistemas de programação. As classes são inseridas em uma hierarquia de especializações de tal forma que uma classe mais especializada herda todas as propriedades da classe mais geral a qual é subordinada na hierarquia. A classe mais geral é denominada superclasse e a classe mais especializada subclasse. O principal benefício da herança é a reutilização de código. A herança permite ao programador criar uma nova classe programando somente as diferenças existentes na subclasse em relação à superclasse. Isto se adéqua bem a forma como compreendemos o mundo real, no qual conseguimos identificar naturalmente estas relações. A classe define atributos e métodos tais como.
Além disso, as subclasses podem prover atributos e métodos adicionais para representar suas próprias características. A herança na programação é obtida especificando-se qual superclasse a subclasse estende. Em Java isto é feito utilizando-se a palavra chave extends:
Em Java, todas as classes, tanto as existentes nas APIs como as definidas pelos programadores, automaticamente derivam de uma superclasse padrão, a classe Object. Se uma classe não especifica explicitamente uma superclasse, então podemos considerar que esta deriva diretamente de Object, como se ela tivesse sido definida como: public class SerVivo extends Object { ... }
Além disso, Java permite apenas herança simples, ou seja, uma classe pode estender apenas de uma única outra classe.
2 POLIMORFISMO
O termo Polimorfismo origina-se do grego e quer dizer "o que possui várias formas".
Em programação está relacionado à possibilidade de se usar o mesmo nome para métodos diferentes e à capacidade que o programa tem em discernir, dentre os