[Java Básico] – Herança Múltipla em Java – Natanael Fonseca
[Java Básico] – Herança Múltipla em Java
março 3, 2013 natanaelfonseca
De várias coisas que eu falo em sala de aula quando ensinando "Orientação a Objeto", com certeza uma das que mais causa espanto por parte dos alunos é quando eu menciono o fato da linguagem java não suportar herança múltipla, pois bem, posso dizer com convicção que Java chegou onde chegou principalmente porque quem ajudou na evolução da linguagem eram pessoas de altíssimo nível e que tinham uma bagagem imensa em outras linguagens de programação.
Muitos dos criados da linguagem acreditavam que em um projeto de software, a necessidade de se ter herança múltipla era pouquíssima e que ainda se mesmo assim o programador quisesse fazer uso, este estaria correndo o risco de passar por muitos problemas de design no futuro.
Mas afinal, se um dia eu precisar de herança múltipla, como resolvo isso em Java, a resposta está no conceito de interfaces :
Em Java, isso não é possível :
Fig.1 – Herança impossível em Java
public class Filhote extends Cachorro, Gato{
Mas isso e possível
public class Filhote implements Cachorro, Gato {
Ou seja, uma determinada classe em Java pode implementar múltiplas interfaces e fazer uso de agregação para responder por chamadas a métodos que tecnicamente só poderiam acontecer se existisse a "herança múltipla". Algo como: