Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Conceito de Herança vs Interfaces

Pessoal estou finalizando o curso de JAVA Polimorfismo : heranças / interfaces...

Estou com uma duvida que esta me incomodando.... Eu posso dar preferencia em ultilizar interfaces ao invez de heranças ? Ou isso se se aplica em determinadas situaçoes... pois eu entendi que multiplas herenças podem trazer muitos problemas fututos...

Como devo proceder para entender e tomar a melhor decisao ... de quando usar herança e quando usar interface?

2 respostas
solução!

Olá, Heitor!

Herança e Interface são dois conceitos diferentes: enquanto o primeiro é usado para extender a funcionalidade de uma classe, criando novos métodos e/ou redefinindo métodos da classe-mãe, o segundo funciona como um contrato, declarando que todas as classes do tipo declarado pela interface possuem determinados métodos. Sobre qual usar, em geral o uso de interfaces é mais indicado, pois na herança a classe filha precisa conhecer detalhes da implementação da classe-mãe, quebrando o encapsulamento. Outro ponto é que as classes acabam ficando fortemente acopladas, isso é, uma alteração na classe-mãe acaba impactando o funcionamento das classes-filhas.

Fala Diogo ! Entao cara, eu estava indo nessa linha de raciocino que as interfaces teriam vantagem sobre a herança por conta do encapsulamento pois a classe que implementa a interface tem por obrigaçao a assinatura dos seus metodos... Porem nao sabia se seria a melhor abordagem ultilziar interfaces no modo geral... Queria validar meu pensamento de alguma forma ,pra entender se estava indo pra direçao certa rsrssr

Muito obrigado !!!