Olá pessoal, estou na aula "Super com Métodos" e estou tentando fazer com que meu programa imprima na tela o valor do salário de um gerente com bonificação, mas ele imprime o valor 0.0 , alguém sabe me dizer oq há de errado ? Segue o código abaixo:
Classe Funcionário:
public class Funcionario {
private String nome;
private String cpf;
private double salario;
public double getBonificacao() {
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;
}
}
Classe Gerente:
public class Gerente extends Funcionario {
private String nome;
private String cpf;
private double salario;
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() {
return super.getBonificacao() + super.getSalario();
}
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;
}
}
Classe para testar o Gerente:
public class TesteGerente {
public static void main(String[] args) {
Gerente g1 = new Gerente();
g1.setNome("Pedro Martins");
g1.setCpf("999.888.777.55");
g1.setSalario(6000.0);
System.out.println(g1.getNome());
System.out.println(g1.getCpf());
System.out.println(g1.getSalario());
g1.setSenha(2222);
boolean autenticou = g1.autentica(2222);
System.out.println(autenticou);
System.out.println(g1.getBonificacao());
}
}
Resultado no console:
Pedro Martins
999.888.777.55
6000.0
true
0.0
Como podem ver o valor impresso é "0.0" mas na verdade eu queria o valor do salário com a bonificação de gerente. Alguém sabe me dizer como solucionar esse problema ?