Como criar novas referências de um objeto?  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
raphaf
Thread.start()
[Avatar]

Membro desde: 09/07/2006 23:19:22
Mensagens: 41
Offline

Por exemplo tenho a classe DespesasDiarias, a cada click num botão eu
gostaria de ter uma nova referêcia da classe DespesasDiarias...

DespesasDiarias nova = new DespesasDiarias();

como seria o codigo?

Raphael Fischer
cassio
GUJ Master
[Avatar]

Membro desde: 19/06/2006 08:25:28
Mensagens: 1336
Localização: Caieiras-SP
Offline

Se vc simplesmente fizer algo como


Vc vai sempre criar um novo objeto e perder a referência para o antigo, só vai conseguir acessar sempre o último objeto criado... Para fazer isso deste jeito vc teria que declarar um novo nome para a referência a cada vez que o botão fosse clicado, em tempo de execução... Mas como fazer isso?! Não dá!
Então o jeito é usar um ArrayList, ou algo do tipo!

Vc vai adicionando um novo objeto ao ArrayList a cada vez que o botão é clicado... Depois tem como acessar cada um dos objetos no array pelo seu índice...

Dá uma pesquisada sobre ArrayList, porque é bem fácil

Abraço!

Cássio Marques

Blog
raphaf
Thread.start()
[Avatar]

Membro desde: 09/07/2006 23:19:22
Mensagens: 41
Offline

Brigadão cara!

Vou pesquisar arraylist então...

Usaria a mesma maneira(arraylist) para criar novas janelas internas então?

Obrigado pela atenção!


Raphael Fischer
akumaldo
Java Ninja
[Avatar]

Membro desde: 09/06/2006 20:30:06
Mensagens: 283
Offline

O array list funciona muito parecido com arrays!!só que arrays lists você pode armazenar objetinhos dentro dele...(não que a array não de)

"O homem se resume em sua vontade de poder...Vontade de poder e nada mais! Viva a vida, morte a verdade..."
Nietzsche
guinaps
HelloWorld

Membro desde: 17/07/2006 21:38:06
Mensagens: 13
Offline

Na verdade, ArrayLists funcionam com um comportamento parecido sim com arrays, só que elas não impõem um limite sobre a quantidade de objetos que você pode armazenar (claro, dentro do limite de memória), pois elas aumentam ou diminuem sua capacidade de armazenamento implicitamente de acordo com sua necessidade. É só questão de ler a documentação e saber usar seus métodos adequadamente.
Lembrando que ArrayLists possuem comportamento assíncrono, quer dizer, elas não prevêem tratamento adequado quando mais de uma thread tenta modificá-las ao mesmo tempo (isso lançaria uma exceção). Quando isso pode ocorrer, você deveria usar a classe Vector, que é semelhante mas já prevê essa possibilidade. Mas isso já é outra história.
raphaf
Thread.start()
[Avatar]

Membro desde: 09/07/2006 23:19:22
Mensagens: 41
Offline

Pessoal, muito obrigado pelas respostas...

Estou lendo o livro do Deitel... Estou ansioso pra começar usar este recurso, mas percebi que antes tenho que ler mais sobre estrutura de dados...

Obrigado a todos que postaram!






Raphael Fischer
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team