Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Benjamin10

[Resolvido] Consultar dados no array!

Recommended Posts

Boa noite;

 

Pessoal tenho 3 classes Funcionarios, Empresa, e uma Teste, na Classe Empresa tenho uma array de Funcionarios de 10 posições, criei um método adiciona funcionarios que recebe o Objeto de funcionario dai armazeno em um local do arrey, neste caso coloquei na posição 0, mais quando coloco para mostrar o conteúdo do array nesta posição me dá esta mensagem "CAP_4.Exercicios_cap4.Funcionarios@42e816" queria saber o que posso fazer para mostrar o conteúdo do array, se estiver certo o meu código !!

 

aqui abaixo coloquei o codigo fonte das Classes.

 

package CAP_4.Exercicios_cap4;

public class Funcionarios {

 
 Funcionarios(String nome) {
 this.nome = nome;
 Funcionarios.identificacao = Funcionarios.identificacao + 1;
 }

 Funcionarios(String nome, String departamento){
 this(nome);
 this.departamento = departamento;
 }
 
 private String nome;
 private String departamento;
 private double salario;
 private Data dataEntrada = new Data();
 private String rg;
 private boolean estaNaEmpresa;
 private static int identificacao;

 
 
 public static int getIdentificacao(){
 return Funcionarios.identificacao;
 }

 
 
 void setData(int ano, int mes, int dia){
 this.dataEntrada.ano = ano;
 this.dataEntrada.mes = mes;
 this.dataEntrada.dia = dia;
 }
 void setDepartamento(String departamento){
 this.departamento = departamento;
 }
 String getDepartamento(){
 return this.departamento;
 }
 void setNome(String nome){
 this.nome = nome;
 }
 String getNome(){
 return this.nome;
 }
 void setSalario(double salario){
 this.salario = salario;
 }
 double getSalario(){
 return this.salario;
 }
 void setRg(String rg){
 this.rg = rg;
 }
 String getRg(){
 return this.rg;
 }
 void setEstaNaEmpresa(boolean EstaNaEmpresa){
 this.estaNaEmpresa = EstaNaEmpresa;
 }
 boolean getEstaNaEmpresa(){
 return estaNaEmpresa;
 }
 public double bonifica(double aumento){
 this.salario += aumento;
 return this.salario;
 }

 public void demite(){

 this.estaNaEmpresa = false;

 }

}

****

 

package CAP_4.Exercicios_cap4;

public class Empresa {

 Empresa(String nome){
 this.nome = nome;
 }
 private String nome;
 private String cnpj;
 private Funcionarios[] funcionario = new Funcionarios[10];


 Funcionarios getFuncionario(int posicao) {
 return this.funcionario[posicao];
 }

 void adiciona(Funcionarios f){
 this.funcionario[0] = f;
 System.out.println(funcionario[0]);
 }
 
 void setNome(String nome){
 this.nome = nome;
 }
 String getNome(){
 return this.nome;
 }
 void setCnpj(String cnpj){
 this.cnpj = cnpj;
 }
 String getCnpj(){
 return this.cnpj;
 }
 
 
}

****

package CAP_4.Exercicios_cap4;

public class TestaFuncionario {

 public static void main(String[] args) {
 Funcionarios f = new Funcionarios("teste");
 
 Empresa e = new Empresa("nome");
 
 f.setDepartamento("info");
 
 e.adiciona(f);
 
 System.out.println(e.getFuncionario(0));
 
 }

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você está imprimindo uma referência ao objeto adicionado e não os dados dentro desse objeto (em C você estaria exibindo um endereço de memória dentro de um ponteiro, ao invés do dado localizado nesse endereço de memória).

Use os métodos get* da classe Funcionarios.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.