Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Construtores em classe Abstract

No item 8 - "Conhece classes abstratas?" do capítulo 5 - "classes e métodos abstratos", apareceu a seguinte informação:


Pergunta: O que é verdade sobre classes abstratas? Selecione todas as afirmações verdadeiras:

Item: Não podem ter construtores

Gabarito: Errado, pois podem sim ter construtores! Uma classes abstrata é uma classe normal, só não pode instanciar e pode ter métodos abstratos. O resto continua valendo!


Surgiu a dúvida sobre a utilização de construtores em classes abstratas, justamente por não podermos instanciar classes desse tipo. Existe alguma utilização no futuro na implementação de construtores para classes abstratas?

1 resposta
solução!

Por que por mais que não se possa instanciar uma classe abstrata, ela pode ser herdada e seu construtor pode ser usado como base para um subclasse ou classe filha. De fato parece ser inútil, mas dependendo do projeto e da aplicação, pode se encontrar uma utilidade. Quando você define um construtor que possuo inicialização de campos por exemplo, você pode garantir que os campos da classe filha serão inicializados iguais ao da classe mãe, mesmo ela sendo abstrata.