Ajudem. dúvida iniciante?

/** from */
private User from = null;

Este trecho acima é do chat que tem tutorial no guj.
o que é o “User”?

esta criando uma variável chamada from, que é private.
Mas e o User? É referente a interface User do “User.java”?
Se for como funciona isso? To boiando.

Exatamente… ele está implementando um User, que seria o “from” também deve ter outro User o “to”… tem um tópico aí que eu criei que o pessoal deu uma boa aula sobre Interfaces, dá uma olhada…
Mas em breve vem alguém aqui pra te dar uma explicação mais detalhada… isso é complicadinho mesmo… :stuck_out_tongue:

Olha só… fica aqui minha sugestão para que fosse criado um Tutorial/Artigo no GUJ sobre Interfaces, que vocês acham??

Certo. Valeu.
Acho que legal um tutorial sobre interfaces. Afinal é bastante útil.
Mas isso escalreceu só 25% da dúvida. :lol:

Se a linha:
private User from = null;

…esta implementando um User. Como se explica o que acontece ai?

Se fosse:
private String from // eu saberia que é declaração de uma var. tipo String

Mas nao entendo pois a interface user tem um monte de métodos dentro.
O que accontece quando se declara “from” como User?
Nem sei se é assim mesmo a pergunta. Espero que tenha entendido. :oops:

Quando você cria uma variável do tipo String, e instancia um objeto nela (no caso do String, basta colocar alguma coisa entre aspas), você estará podendo usar neste objeto todos os métodos da classe String.
Acontece a mesma coisa no caso desse User. Você vai criar um objeto em que poderá usar os métodos / atributos que estão presentes em User.

Bani,
Mas esses métodos da interface User,
Eles não possuem código, certo?
No caso eles sao implementados depois, ex.:

/** GenericMessage.java */
/** Retorna o PARA */
public User getTo() {
return (to); // que foi declarado: 	private User to = null;
}

Eu nao entendo o seguinte:
Porque declarar a interface User, com todos aqueles métodos, se depois tenho que declarar novamente cada método que quero usar no (GenericMessage.java)?

Na minha concepão nao vejo a vantagem da interface.
Acho que sou muito burro mesmo. :oops:

Você está certo, na hora de criar o objeto será necessário usar uma classe que implemente a interface.
Você pode ler algumas explicações sobre porque usar interfaces em um outro tópico aqui do forum, no seguinte endereço:
http://www.guj.com.br/forum/viewtopic.php?t=1066

Ou então ler este texto traduzido de uma newsletter da Sun:
http://portaljava.com/home/modules.php?name=Sections&op=viewarticle&artid=9

O que ele fez foi criar uma “regra” de desenvolvimento para todas as classes que fossem implementar User…
Mas agora não me pergunte porque ele fez isso se só ChatUser implementa User… :stuck_out_tongue:
Sou iniciante em Interfaces ainda… :frowning:

:slight_smile: estou pior ainda. Sou iniciante em Java.

Mas foi isso que eu entendi tb.
Eu entendi como se fosse o ponto de partida da aplicação, os requisitos da aplicação em termos de Métodos.
“Para criar um usuário deve implementar tais métodos”.
É uma questão de estruturar o projeto. :?
acho que é isso. :lol:

Tamu no mesmo barco… :smiley:
Acho a mesma coisa…

Sim, as interfaces deixam tudo mais bonitinho e organizadinho (que meigo!)
Além de tornar mais fácil e rápida a manutenção e a reusabilidade do código, que são os principais benefícios da orientação a aobjetos.

Bani, quer dizer que o Leandro e eu estamos no caminho certo? :smiley:
Ehhhhhh.
Até que enfim! hahaha

Valeu a força pessoal.
Eu já tinha escuta que a comunidade java é muito legal e ajuda a galera que esta iniciando.
Agora pude comprovar. Valeu mesmo.

Ahh. Vou falar um pouco de mim.
Trabalho com ASP, Interbase, Access. Designer tb.
Faço quase tudo em minha empresa. http://www.gen4.com.br.
Nós somos uma empresa do grupo compuserv informática http://www.compuserv.com.br

Meus Trabalhos (todo o design e site feito por mim):
http://www.megaforce.com.br //loja
http://www.casadodesenho.com
http://www.ciacouro.com.br
http://www.coorece.com.br
http://www.sindiradio.com.br
http://www.gen4.com.br
http://www.sogil.com.br