Olá estou tentando responder o exercício mais só estou conseguindo fazer uma unica impressão. Gostaria de ajuda.
Segue o código:
class Empresa {
String nome;
String cnpj;
Funcionario[] funcionarios;
int livre = 0;
void adiciona(Funcionario f) {
this.funcionarios[this.livre] = f;
this.livre++;
}
void imprimeEmpresa() {
System.out.println();
System.out.println("Empresa " + this.nome);
System.out.println();
System.out.println("CPJ: " + this.cnpj);
System.out.println();
for(int i = 0; i < this.funcionarios.length; i++) {
Funcionario funcionario = this.funcionarios[i];
if(funcionario == null) continue;
System.out.println("Nome do Funcionario: " + funcionario.nome);
System.out.println();
System.out.println("Funcao: " + funcionario.funcao);
System.out.println();
System.out.println("Tem salario de: " + funcionario.salario);
System.out.println();
System.out.println("Data de entrada na empresa: " + funcionario.dataDeEntrada.getFormatada);
}
}
}
class Funcionario {
String nome;
String funcao;
double salario;
Data dataDeEntrada;
}
class Data {
String getFormatada;
void getFormatada(int dia, int mes, int ano) {
this.getFormatada = dia + "/" + mes + "/" + ano;
}
}
class TestaEmpresa {
public static void main(String[] args) {
//====================================================================//
//Criando uma nova empresa.
Empresa emp1 = new Empresa();
emp1.nome = "Comercial Carvalho";
emp1.cnpj = "10.354.987/0003-38";
//====================================================================//
//====================================================================//
//Criando um novo Array de Funcionario;
Funcionario func0 = new Funcionario();
emp1.funcionarios = new Funcionario[10];
// Criando o 1º funcionario;
emp1.funcionarios[0] = new Funcionario();
emp1.funcionarios[0].nome = "Mauricio";
emp1.funcionarios[0].funcao = "Motorista";
emp1.funcionarios[0].salario = 3560;
emp1.funcionarios[0].dataDeEntrada = new Data();
emp1.funcionarios[0].dataDeEntrada.getFormatada(20, 10, 2014);
emp1.adiciona(emp1.funcionarios[0]); // adicionando o funcionario no Array.
//====================================================================//
//====================================================================//
//Criando um novo funcionario;
Funcionario func1 = new Funcionario();
emp1.funcionarios = new Funcionario[10];
emp1.funcionarios[1] = new Funcionario();
emp1.funcionarios[1].nome = "Felipe";
emp1.funcionarios[1].funcao = "Bebezinho";
emp1.funcionarios[1].salario = 5000;
emp1.funcionarios[1].dataDeEntrada = new Data();
emp1.funcionarios[1].dataDeEntrada.getFormatada(30,05,2015);
emp1.adiciona(emp1.funcionarios[1]);
//====================================================================//
emp1.imprimeEmpresa();
}
}