Boa noite pessoa, estou com uma dúvida no Exercício 5.5 parte 4 da Apostila FJ-11da Caelum.
Segue a dúvida ( (opcional) Em vez de mostrar apenas o salário de cada funcionário, você pode chamar o método mostra()
de cada Funcionário da sua array.)
Tentei chamar o método mostra() da classe Funcionario e não deu certo, tentei de vária formas.
vou colocar os códigos e se possível, mostre os erros ok.
o código que postarei roda beleza, mais não consigo introduzir o método mostra() da classe funcionário onde o exercício está pedindo.
class Funcionario{
String nome;
String departamento;
double salario;
String rg;
boolean estaNaEmpresa;
Data dataDeEntrada;
void bonifica(double aumento){
double novoSalario = this.salario + aumento;
this.salario = novoSalario;
}
void demite(){
if(estaNaEmpresa)
System.out.println("Está na empresa!");
else {
System.out.println("Não está mais na empresa!");
}
}
void mostra(){
System.out.println("Nome do Funcionário: " + this.nome);
System.out.println("Departamento: " + this.departamento);
System.out.println("RG: " + this.rg);
System.out.println("Salário: " + this.salario);
System.out.println("Admissão: " + this.dataDeEntrada.dia + "/" +
this.dataDeEntrada.mes + "/" + this.dataDeEntrada.ano);
}
}
class Data{
int dia;
int mes;
int ano;
}
class Empresa{
Funcionario [] empregados;
String cnpj;
String nomeEmpresa;
static int contador;
void adiciona (Funcionario f){
if(contador < 10)
this.empregados[contador ++] = f;
}
void mostraEmpregados(){
for(int i = 0; i < this.empregados.length; i++){
System.out.println("Funcionário na posição: " + i);
System.out.println("Salário: " + this.empregados[i].salario);
}
}
}
class TestaEmpresa{
public static void main( String [] args){
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[10];
Funcionario f1 = new Funcionario();
f1.salario = 1000;
empresa.adiciona(f1);
Funcionario f2 = new Funcionario();
f2.salario = 1700;
empresa.adiciona(f2);
Funcionario f3 = new Funcionario();
f3.salario = 1100;
empresa.adiciona(f3);
Funcionario f4 = new Funcionario();
f4.salario = 900;
empresa.adiciona(f4);
Funcionario f5 = new Funcionario();
f5.salario = 1300;
empresa.adiciona(f5);
Funcionario f6 = new Funcionario();
f6.salario = 1700;
empresa.adiciona(f6);
Funcionario f7 = new Funcionario();
f7.salario = 850;
empresa.adiciona(f7);
Funcionario f8 = new Funcionario();
f8.salario = 1700;
empresa.adiciona(f8);
Funcionario f9 = new Funcionario();
f9.salario = 900;
empresa.adiciona(f9);
Funcionario f10 = new Funcionario();
f10.salario = 1350;
empresa.adiciona(f10);
empresa.mostraEmpregados();
}
}

