obrigado pela ajuda, Gabriel!
public class Funcionario {
private String nome;
private String cpf;
private double salario;
public double getBonificacao() {
System.out.println("chamando metodo de bonificacao do funcionario");
return this.salario* 0.05;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public double getSalario() {
return salario;
}
public void setSalario(double salario) {
this.salario = salario;
}
}
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 getBonificacao() {
System.out.println("chamando o metodo de bonificacao do gerente");
return super.getBonificacao() + super.getSalario(); //
}
}
public class TesteReferencias {
public static void main(String[] args) {
Funcionario g1 = new Gerente();
g1.setSalario(5000.0);
Funcionario f = new Funcionario();
f.setSalario(2000.0);
Funcionario ev = new EditorVideo();
ev.setSalario(2500.0);
ControleBonificacao controle = new ControleBonificacao();
controle.registra(g1);
controle.registra(f);
controle.registra(ev);
System.out.println(controle.getSoma());
}
}