Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

TesteReferencias não puxa gerente

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();    
}

}

3 respostas

Fala Rodrigo!

Isto é porque você criou uma instância mais genérica (Funcionario g1). Se você criar a instância específica do gerente (Gerente g1) ele vai chamar o método específico do gerente.

Espero ter ajudado.

Não esqueça de solucionar o fórum se der certo ok!?

Abraços!

=)

Carlos,

Obrigado pelo retorno, troquei e tbm não funcionou ele não chama de jeito nenhum o gerente.

solução!

O problemar era o ç