Acessando Objeto

7 respostas
M

Olá pessoal,
Boa noite,

Tenho 3 classe, Login, Principal e Usuario.

Ao executar meu programa eu instancio um objeto da classe Login, onde é feito a autenticação de usuario.
Apos a autenticação eu instancio um objeto da classe Usuario, contendo as informações do usuario recuperadas do banco de dados, e instancio um objeto da classe Principal, que é a tela principal do meu programa.

O que eu quero é, uma vez instanciado um objeto da classe Usuario, acessar seus métodos e atributos em qualquer outra classe do programa, por exemplo na classe principal.

Não sei com isso pode ser feito, nem se pode ser feito.

Se alguem puder me ajudar, vai me quebrar não só um galho com a árvore inteira :grin:

Obrigado,

Rodrigo

7 Respostas

G

vc está com dúvida em como acessar os métodos com uma instância da classe Usuario...?

Usuario user = new Usuario();

user.method();

explique melhor sua dúvida...

:wink:

M

Não, eu quero saber se é possivel acessar uma instancia de outra classe.

Eu quero acessar um objeto da classe Usuario dentro da classe Principal, mas este objeto não foi instanciado na classe Principal e sim na classe Login.

Quando eu instancio o usuario na classe Login:
Usuario usuario1 = new Usuario();

Eu consigo usar usuario1.metodo();

Mas quando eu estou na classe Principal eu não consigo usar “usuario1.metodo();”, por que não existe usuario1 dentro da classe principal.

O que eu quero é instaciar um usuario na classe dentro da classe Login e acessa-lo na classe Principal, sem ter que instancia-lo novamente ou passa-lo como paramentro.

Espero ter esclarecido melhor minha divida.

O

E aí cara,
Estou começando com Java faz pouco tempo, não entendi bem sua dúvida, mas dê uma olhada se os métodos que você quer acessar de outras classes são “static”, se forem, pode acessá-los direto.
Espero ter ajudado.

M

Bom dia,

Quero agradecer aos membros que responderam,
Consegui declarando os atributos e métodos como static

Eu ainda tenho que instancia o usuario em todas as classe em que vou usa-lo, mais os paramentros passados no Login podem ser recuperados na classe Principal.

Obrigado pessoal.

:cool: :razz: :lol:

G

Cara, isso é basico…
Se o seu metodo ou atributos são ‘static’ voce não precisa e não deve instanciar a classe, voce pode acessar direto a partir do nome da classe.

Exemplo:

Usuario.metodo(); ou Usuario.atributo

o que voce pode fazer também é usar singleton para garantir que todas as VM’s que acessarem a sua classe, irão acessar a mesma instância.

Falou.

E

No exemplo abaixo a classe Principal não tem o objeto usuario, mas consegue acessar usuario via login: principal.login.usuario

class Principal{
Login login = new Login();

public static void main(String[] args){

Principal principal = new Principal();

principal.login.usuario.nome = Homem Aranha;

System.out.println( "nome do usario " +

principal.login.usuario.nome );

}

}
class Login{

Usuario usuario = new Usuario();

}
class Usuario{

String nome = “”;

}
F

“moreira07”:
Bom dia,

Quero agradecer aos membros que responderam,
Consegui declarando os atributos e métodos como static

Eu ainda tenho que instancia o usuario em todas as classe em que vou usa-lo, mais os paramentros passados no Login podem ser recuperados na classe Principal.

Obrigado pessoal.

:cool: :razz: :lol:

O idela seria fazer um Bean que recebe esse usuário, mas no caso o Static pra isso serve.

Criado 21 de abril de 2005
Ultima resposta 25 de abr. de 2005
Respostas 7
Participantes 6