1
resposta

Duvida de quando usar o super para métodos.

Por que usar PROTECTED para o o atributo salário, se também posso chamar um get da classe super?

public class Funcionario {
    //... outros métodos
    private double salario;
    //... Getters e Setters
}

public class Gerente extends Funcionario {
    @Override
    public double getBonificacao() {
        return super.getSalario();
    }
}
1 resposta

Boa tarde, Guilherme! Como vai?

Essa é uma boa ideia! Inclusive há muita discussão sobre isso no meio da comunidade. De modo geral, o ideal é manter o encapsulamento dos atributos com o private e acessá-los via método getter com o super. Contudo, podem haver casos onde o método getter não faz sentido ser criado, então o protected viria bem a calhar. Sendo assim, como programador vc terá que avaliar a situação em que está inserido para poder tomar uma decisão.

Pegou a ideia? Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!