boa noite, alguem poderia me ajudar?
criei a classe Funcionário com as características dos funcionários que serão guardados no array de funcionários, que esta na classe Empresa.
A classe Funcionario referencia a classe Data
class Funcionario {
String nome;
int matricula;
String rg;
double salario;
Data diaFormatado;
String cargo;
String departamento;
class Data {
int dia;
int mes;
int ano;
void recebeData(int diaRecebido, int mesRecebido, int anoRecebido) {
this.dia = diaRecebido;
this.mes = mesRecebido;
this.ano = anoRecebido;
}
class Empresa {
String nomeEmpresa;
int cnpj;
String endereco;
Funcionario[] funcionarios;
int b;
}
consegui atribuir todos os dados para os funcionários do array através de um for, porem no método de impressão do array, a data do funcionário é mostrada como algo que parece ser endereçamento de memória, exemplo : Data@e7858922
segue a atribuição dos datos e o método de impressão dos dados, os demais dados como nome cargo, etc foram impressos sem problemas :
for (int cont = 0; cont < 5; cont++) {
Funcionario func = new Funcionario();
func.nome = "pedro" ;
func.salario = 1000 + cont * 10;
func.rg = ("10-A" + limite);
func.diaFormatado = new Data();
func.diaFormatado.recebeData(01,02,2016);
func.cargo = "programador java junior";
func.departamento = "departamento java";
empteste.addFuncs(func);
limite++;
}
método de impressão, declarado na classe empresa
void imprimeFuncs (int limite) {
for (int i = 0; i < limite; i++) {
System.out.println("funcionario: " + this.funcionarios[i].nome );
System.out.println("matricula: " + this.funcionarios[i].matricula );
System.out.println("rg: " + this.funcionarios[i].rg );
System.out.println("salario: " + this.funcionarios[i].salario);
System.out.println("admissao: " + this.funcionarios[i].diaFormatado);
System.out.println("cargo: " + this.funcionarios[i].cargo);
System.out.println("dpto: " + this.funcionarios[i].departamento);