public double getBonificacao() {
return super.getBonificacao() + super.getSalario;
Repare, que neste código que implementou na classe filha, você efetivamente está usando o getBonificação da classe mãe e somando o resultado dele ao valor do salário retornado pelo metodo getSalario da classe mãe.
Ou seja se o método da super classe estiver assim:
public double getBonificacao() {
return this.salario * 0.1; //retorna 10% do valor do salário
}
public double getSalario() {
return this.salario;
}
A classe filha vai pegar o resultado deles, e usar como valor em seu próprio método, está dizendo o seguinte:
A bonificação do gerente, é igual a bonificação do funcionário + o salario do gerente.
Conforme falou, em sua classe mãe a bonificação é 10% do salario do funcionário, ou seja, se o salario do gerente é 1k, a bonificação dele como funcionário é 100, mas ele é gerente também, então recebe mais 1k, ou seja, a bonificação do gerente será 1100,00
Poderia escrever o método da classe filha da seguinte forma, para obter o mesmo resultado, talvez influencie no seu entendimento:
public double getBonificacao() { //Bonificacao do gerente
double bonificacaoFuncionario = super.getBonificacao();
return bonificacaoFuncionario + super.salario;
}