Galera boa noite.
Estou com dificuldades para criar uma array de funcionários com 5 posições e acessar e imprimir suas informações. Poderiam analisar meu código e me ajudar a entender onde estou errando, pois tentei de todas as maneiras e até agora não consegui sair do lugar.
Obs: Criando apenas 1 funcionário, sem utilizar o array, consegui criar, inserir e imprimir as informações sem problemas.
class Funcionarios {
double salarioMensal;
String cargo;
Data dataEntrada;
Pessoa func;
Empresa emp;
Funcionario[] funcionario;
void recebeAumento(double valorAumento){
this.salarioMensal += valorAumento;
System.out.println("Parabens, voce recebeu um aumento salarial de R$" + valorAumento +"." + " Agora seu salario e: R$" +
salarioMensal + ".");
}
double calculaGanhoAnual(){
double result = this.salarioMensal * 12;
System.out.println("O rendimento anual e de: R$" + result + ".\n");
return result;
}
String exibeNaTela(){
String texto = emp.exibirEmpresa();
texto += "***Dados do Funcionario***\n\n";
texto += func.exibirPessoa();
texto += "Salario: R$" + salarioMensal + "." + "\n";
texto += "Cargo: " + cargo + "." + "\n";
texto += dataEntrada.getFormatada();
return texto;
}
}
class Data {
int dia;
int mes;
int ano;
void preencheData(int dia, int mes, int ano){
this.dia = dia;
this.mes = mes;
this.ano = ano;
}
String getFormatada() {
String data = "Data de Admissao: " + this.dia + "/" + this.mes + "/" + this.ano + "." + "\n";
return data;
}
}
class Pessoa {
String nome;
String rg;
String cpf;
String exibirPessoa(){
String texto = "Nome: " + nome + "." + "\n";
texto += "RG: " + rg + "." + "\n";
texto += "CPF: " + cpf + "." + "\n";
return texto;
}
}
class Empresa {
String nomeEmpresa;
String cnpj;
String exibirEmpresa(){
String texto = "***Dados da Empresa***\n\n";
texto += "Nome da empresa: " + nomeEmpresa + "." + "\n";
texto += "CNPJ: " + cnpj + "." + "\n\n";
return texto;
}
}
class FuncionariosMain {
public static void main (String[] args){
Funcionarios berrini = new Funcionarios();
Pessoa p1 = new Pessoa();
Data data = new Data();
berrini.func = p1;
berrini.dataEntrada = data;
berrini.funcionario = new Funcionario[5];
berrini.funcionario[0] = new Funcionario();
berrini.funcionario[0].func.nome = "Osmair Zamana Junior";
berrini.funcionario[0].func.rg = "12.345.678-9";
berrini.funcionario[0].func.cpf = "123.456.789-10";
berrini.funcionario[0].cargo = "Analista de Teste";
berrini.funcionario[0].salarioMensal = 15000.0;
berrini.funcionario[0].dataEntrada.preencheData(11, 8, 2015);
Empresa empresa = new Empresa();
berrini.funcionario[0].emp = empresa;
berrini.funcionario[0].emp.nomeEmpresa = "Nome Fantasia S/A";
berrini.funcionario[0].emp.cnpj = "12.345.678/0001-00";
System.out.println(berrini.exibeNaTela());
berrini.funcionario[0].calculaGanhoAnual();
berrini.funcionario[0].recebeAumento(502.0);
}
}
Obrigado...