1
resposta

Contrutores na Classe Pai

Gostaria de saber por que não podemos implementar os construtores, com e sem parâmetros, na classe pai para que então as classes filhas venham a herda-los. Em outras palavras, por que temos que implementar os construtores nas classes filhas, se eles fazem o mesmo serviço para todas as classes, que é atribuir null ou novoImposto ao atributo this.novoImposto?

1 resposta

Olá, Alessandro! Tudo bem com você?

Peço desculpas pela demora no retorno a sua mensagem.

Ótima pergunta! A razão pela qual não podemos implementar os construtores na classe pai para que as classes filhas herdem é porque a herança em Java segue uma ordem específica na construção de objetos.

Quando uma classe filha é instanciada, primeiro o construtor da classe pai é chamado e, em seguida, o construtor da classe filha. Se a classe pai tivesse um construtor implementado, as classes filhas não teriam a oportunidade de inicializar seus próprios atributos.

Por exemplo, suponha que a classe pai tenha um construtor que atribui null ao atributo "novoImposto". Se uma classe filha tiver um construtor que atribui um valor diferente a esse atributo, a implementação do construtor na classe pai iria sobrescrever essa atribuição.

Portanto, para garantir que as classes filhas tenham a oportunidade de inicializar seus próprios atributos, é necessário implementar os construtores nas classes filhas.

Todavia, vale ressaltar que como você postou sua pergunta há algum tempo é possível que a constante evolução da tecnologia impacte na resolução da sua dúvida. Sendo assim, caso queira se aprofundar neste tema e com conteúdos atualizados, recomendo o material abaixo:

Abraços e bons estudos!

Espero ter ajudado e bons estudos!