class Equipe {
protected String nomeEquipe;
protected Funcionario funcionario;
public String getDados() {
String texto = "Eixo: " + this.nomeEquipe + "." + "\n\n";
texto += funcionario.getDados();
return texto;
}
public String getNomeEquipe() {
return this.nomeEquipe;
}
public void setNomeEquipe(String nome) {
this.nomeEquipe = nome;
}
}
class Funcionario extends Equipe {
protected String nome;
protected String cargo;
protected double salario;
public String getDados() {
String texto = "Nome: " + this.nome + "." + "\n";
texto += "Cargo: " + this.cargo + "." + "\n";
texto += "Salario: " + this.salario + "." + "\n";
return texto;
}
public String getNome() {
return this.nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getCargo() {
return this.cargo;
}
public void setCargo(String cargo) {
this.cargo = cargo;
}
public double getSalario() {
return this.salario;
}
public void setSalario(double valor) {
this.salario = valor;
}
}
class LiderDeEquipe extends Funcionario {
//Neste método é passado um funcionário e o valor do aumento como parâmetro.
public void getDaAumento(Funcionario f, double valorDoAumento) {
this.Funcionario = f; // Linha apresenta erro.
this.salario += valorDoAumento;
System.out.print("O funcionario " + f + ", recebeu um aumento de R$" + valorDoAumento + ".");
}
}
class TesteEquipeCartoes {
public static void main(String[] args) {
Equipe equipe = new Equipe();
equipe.setNomeEquipe("Meios de Pagamento");
LiderDeEquipe lider = new LiderDeEquipe();
lider.setNome("Marcio");
lider.setCargo("Lider de Equipe");
lider.setSalario(3000.0);
Funcionario f1 = new Funcionario();
f1.setNome("Felipe Palomares");
f1.setCargo("Analista de Teste Junior");
f1.setSalario(2500.0);
Funcionario f2 = new Funcionario();
f1.setNome("Gilmar Junior");
f1.setCargo("Aux. de Teste");
f1.setSalario(1500.0);
Funcionario f3 = new Funcionario();
f1.setNome("Osmair Zamana");
f1.setCargo("Aux. de Teste");
f1.setSalario(1500.0);
Funcionario f4 = new Funcionario();
f1.setNome("Rafael Sena");
f1.setCargo("Aux. de Teste");
f1.setSalario(1500.0);
System.out.print(equipe.getDados()); // Linha apresenta erro. Queria exibir os dados de todos os funcionários.
}
}
A linha "this.Funcionario = f;", do método "getDaAumento", da classe "LiderDeEquipe" está com erro.
Não estou conseguindo fazer a herança entre as classes "Funcionário" e "Equipe", e criar um método para que exiba os dados de todos os funcionários na classe "Equipe".
Poderiam me ajudar por favor?
Obrigado.