Boa tarde, estou com duvidas na parte de fazer o terminal imprimir a array de funcionarios dentro da classe EMPRESA e uma duvida do processo lógico do método "adiciona"
class Empresa{
String nome;
String cnpj;
Funcionario[] funcionarios;
int contador =0;
void adiciona(Funcionario f){
this.funcionarios[this.contador] = f;
this.contador++;
}
void show(){
System.out.println("Nome:" + this.nome);
System.out.println("CNPJ:" + this.cnpj);
System.out.println("Funcionarios:" + funcionarios[0]);
}
}
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(){
return this.dia + "/" + this.mes + "/" + this.ano;
}
}
class Funcionario {
String departamento ="Departamento";
double salario=00;
Data dataDeEntrada;
String rg="00.000.000.0";
String nome="Seu Nome e Sobrenome";
void recebeAumento(double valorAumento){
this.salario += valorAumento;
}
void calculaGanhoMensal(double ganhoMensal){
this.salario *= ganhoMensal;
}
void mostra(){
System.out.println("Nome:" + this.nome);
System.out.println("RG:" + this.rg);
System.out.println("Departamento:" + this.departamento);
System.out.println("Data de entrada:" + this.dataDeEntrada.getFormatada());
System.out.println("Salario:" + salario);
}
}
class alura {
public static void main(String[] args) {
Funcionario f1 = new Funcionario();
f1.departamento="PROFESSOR";
f1.salario=1200;
f1.dataDeEntrada = new Data();
f1.dataDeEntrada.preencheData(03,8, 2016);
f1.rg="11.111.111-1";
f1.nome="Lucas Silveira Vieira";
System.out.println("FUNCIONARIO");
f1.mostra();
Empresa e1 = new Empresa();
e1.nome="Chroma";
e1.cnpj="11111111";
e1.funcionarios = new Funcionario[3];
e1.adiciona(f1);
System.out.println("EMPRESA");
e1.show();
}
}
Após executar, na parte de imprimir a linha "Funcionarios" o terminal exibe da seguinte forma:
FUNCIONARIO
Nome:Lucas Silveira Vieira
RG:11.111.111-1
Departamento:PROFESSOR
Data de entrada:3/8/2016
Salario:1200.0
EMPRESA
Nome:Chroma
CNPJ:11111111
Funcionarios:Funcionario@15db9742