Objeto de uma classe em outra

9 respostas
J

Tenho essa classe

package biblioteca;

public class classCadLeitores
{
    public String matricula;

    public classCadLeitores()
    {
        matricula = "";
    }
}

Tenho essa outra auxiliar… onde vai ficar todas as classes instanciadas…

package biblioteca;

public class Auxiliar
{
    static classCadLeitores cadLeitore[] = new classCadLeitores[10];
    
    public Auxiliar()
    {
        cadLeitore[0] = new classCadLeitores();
    }
}

Tenho a principal que intancia a auxiliar…

package biblioteca;

public class Principal
{
    public static void main(String[] args)
    {
        Auxiliar Ax = new Auxiliar();
    }
}

quero acessar o objeto cadLeitores nessa classe. melhor quero acessar-lo em todas as outras classes…

package biblioteca;

import javax.swing.JOptionPane;

public class classCadTitulos
{
    // estou usando assim mas não esta dando certo.
    Principal.Ax.cadLeitores[0].matricula = "123";
}

Alguem pode me ajudar???

9 Respostas

J
Auxiliar.cadLeitores[0].matricula = "123";

pelo que vi você não precisa dessa classe Principal…

e você tem que colocar isso que tá aí em cima, dentro de um metodo, de um main por exemplo…

D

Faça por etapas…ae vc vai entender melhor…
Pq vc não coloca os parametros no construtor ?
Isso ae tá meio gambi “JManobra”…

package biblioteca; 

public class Principal 
{ 
    public static void main(String[] args) 
    { 
        Auxiliar Ax = new Auxiliar();
        Ax.cadLeitores[0].matricula = "123"; 
    } 
}

Qualquer coisa posta ae seu trabalho que a galera aqui dá um help !

J

Olá obrigado por ter respondido,

bom eu instanciei a classe Auxiliar como Ax na classe Principal ok, defini um valor para para ela

Auxiliar Ax = new Auxiliar(); 
        Ax.cadLeitores[0].matricula = "123";

mas vamos super que eu precise desse valor em outra classe por exemplo na classe classCadTitulos mas para isso teria que instanciar a Auxiliar novamente, com isso eu iria perder os dados que foi informado anteriormente…

D
"jeronimodedeus":
Olá obrigado por ter respondido, bom eu instanciei a classe Auxiliar como Ax na classe Principal ok, defini um valor para para ela
Auxiliar Ax = new Auxiliar(); 
        Ax.cadLeitores[0].matricula = "123";

mas vamos supor que eu precise desse valor em outra classe por exemplo na classe classCadTitulos mas para isso teria que instanciar a Auxiliar novamente, com isso eu iria perder os dados que foi informado anteriormente..

É o seguinte :Imagine um Form Principar onde vc tem um menu onde chama cada janela ok ?
Então vc chama o Cadastro Leitores , adiciona a galera no seu Array ae ...
Cria um repositário na classe Principal (a que vai ficar aberta) e cria um método público pra este array que vc guardou seus Leitores para retorná -los de onde vc desejar.

declara uma variável para guardar os cadastros
private suaCLasse leitores = null;
depois um método para retorná-los
public ArrayList getLeitores(){

         return this.leitores;

  }

Qdo chamar outra tela vc cria chama o Método que retorna esse seu array de Leitores....

Meia boca né ? :roll:

J

Você não tem que instanciar Auxiliar em momento algum, o atributo é static, você pode acessar diretamente da classe…

Auxiliar.cadLeitores[0].matricula = "123";
J

se não instanciar ocorre erro de nullPoint…

J

dsfextreme,

pelo que entendi vc sugeriu que crie um ArrayList onde ficaram armazenado os dados temporiatamente e quando eu precisoar entro nele e pego os dados?

J
se não instanciar ocorre erro de nullPoint..

Mas tambem inicializar atributo estatico no construtor, isso não existe nao...

package biblioteca;

public class Auxiliar{
    static classCadLeitores cadLeitore[] = new classCadLeitores[10];
   
    static{
        cadLeitore[0] = new classCadLeitores();
    }
}
D

“jeronimodedeus”:
dsfextreme,

pelo que entendi vc sugeriu que crie um ArrayList onde ficaram armazenado os dados temporiatamente e quando eu precisoar entro nele e pego os dados?

Isso ae :!: :grin:

Criado 25 de maio de 2006
Ultima resposta 25 de mai. de 2006
Respostas 9
Participantes 3