Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

implements ou extends

Criei uma interface "A", criei uma classe abstrata "D" que implementa(implements) "A", criei duas classes concretas "B" e "C" que herdam(extends) de "D". Caso haja métodos na interace "A", o que ocorre se eu sobrescrever os métodos de "A" nas classes concretas "B" e "C"? No caso, a classe abstrata "D" tem acesso aos métodos abstratos da interface "A" pela implementação, por ser abstrata, ela não precisa implementar os métodos da interface "A", mas as classes concretas que herdam de "D" sim? https://github.com/DiegoProtec/heranca

1 resposta
solução!

Bom dia Diego, como A tem métodos , alguem abaixo de sua hierarquia deverá obrigatoriamente implementar! Como D é abstract, logo poderá ou não implementar os métodos de A (não é obrigado), dai temos duas situações: 1 - Se D implementar os métodos de A, os filhos de D não são obrigados a implementa-lo, mas podem.

2-Agora caso a classe D não queira implementar os métodos de A, os filhos de D serão obrigados a implementa-los.

Espero ter esclarecido sua dúvida! Abraços.