3
respostas

Super

Embora eu tenha entendido o funcionamento da palavra reservada "super", acabei me deparando com uma situação que gostaria de auxílio para resolver. Se o super faz referência a super classe, baseado no exemplo dado na aula, ao definir o valor do salário do Funcionário dentro da própria super classe, eu estaria definindo o valor do salário do Gerente também?

3 respostas

Boa noite, Wesley! Como vai?

Veja que todo objeto do tipo Gerente também é do tipo Funcionario! Por consequência, pode-se dizer que o salário desse funcionário ( que nesse caso é um gerente ) foi definido na classe Funcionario! Afinal de contas, o salário foi herdado!

Pegou a ideia? Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Perfeito! Entendi muito bem. Gostaria ainda de fazer uma outra pergunta. No caso de existirem outros funcionários, como diretor e assessor, sendo eles também do tipo funcionário, para determinar o valor do salário de cada um deles, eu definiria dentro da classe diretor e assessor, certo?

Obs.: Talvez seja uma dúvida meio boba, mas é só pra compreender mesmo e não dar espaço para confusões futuras.

Opa, Wesley! Então, no caso dessas novas classes Diretor e Assessor, elas também herdariam da classe Funcionario e, por consequência, também o atributo salário seria herdado!

Uma coisa muito importante que vc precisa ter em mente é que um dos objetivos da herança é justamente evitar reescrita de código! Sendo assim, se a classe mãe ( nesse caso, Funcionario ) já definiu um atributo comum a todas as subclasses ( o atributo salario ), então esse atributo não precisa ser repetido em nenhuma classe filha! E o mesmo vale para o caso dos métodos!

Pegou a ideia? Qualquer coisa é só falar que a gente vai trocando ideia!

Grande abraço e bons estudos, meu aluno!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software