Meu teste Referencias ele puxa a bonificação de funcionario comum e não puxa a de um gerente:
public class TesteReferencias {
public static void main(String[] args) {
Funcionario g1 = new Gerente();
g1.setNome("Tuco");
g1.setSalario(5000.0);
Funcionario f1 = new Funcionario();
f1.setSalario(2000.0);
Funcionario f2 = new Funcionario();
f2.setSalario(2500.0);
ControleBonificacao controle = new ControleBonificacao();
controle.registra(f1);
controle.registra(f2);
controle.registra(g1);
System.out.println(controle.getSoma());
}
}
public class Gerente extends Funcionario {
private int senha;
public void setSenha(int senha) {
this.senha = senha;
}
public boolean autentica(int senha) {
if (this.senha == senha) {
return true;
} else {
return false;
}
}
public double getBonificação() {
System.out.println("Chamando o metodo de bonificacao Gerente");
return super.getBonificacao() + super.getSalario();
}
}