Na classe "super" "funcionario" eu mantive o atributo "salario" como "private" em vez de alterá-lo para "protect". Na classe "gerente", no método "getBonificacao" eu usei assim: return this.getSalario(); ou return super.getSalario();
Minha dúvida: Não fiquei convencido do "protect", uma vez que sem usar ele tudo funcionou perfeitamente. Isso não deveria dar problema?