| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/06/2005 15:38:33
|
Rafael Nunes
Moderador
![[Avatar]](/images/avatar/d072677d210ac4c03ba046120f0802ec.png)
Membro desde: 09/10/2003 13:41:06
Mensagens: 2890
Localização: sao bernardo do campo
Offline
|
To lendo o Effective Java aqui, e logo no primeiro capítulo já me enrolou as idéias.
Ele sugere(quando necessário) criar métodos estáticos que retornam uma instância da classe, ao invés de construtores.
Segundo o autor, esta pratica possibilita a não-duplicação de objetos desnecessários.
Por exemplo, ao invés de fazer um new Boolean(boolean), fazer um método que retorne o Boolean.valueOf(boolean).
Porém se eu utilizar um valueOf() não vou estar da mesma forma retornando um objeto Boolean?
This message was edited 1 time. Last update was at 14/06/2005 15:39:04
|
------------------------------------------------------------------
"Think different? I'd be happy if most people would just think..."
http://www.yaw.com.br
http://twitter.com/rafanunes
http://twitter.com/youandwe
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/06/2005 15:46:45
|
jgbt
GUJ Master
![[Avatar]](/images/avatar/25df35de87aa441b88f22a6c2a830a17.png)
Membro desde: 04/06/2003 15:01:48
Mensagens: 1286
Localização: Porto Alegre/RS
Offline
|
no caso especifico do Boolean eu acho que não, se não me engano ele retorna o mesmo objeto, pq ele so pode ter dois valores, eu acho(alguem???).
mas quanto ao resto da duvida, acho que vai depender muito, se vc precisar garantir estado dos objetos, criar esse tipo de metodo não acho uma boa.
[]'s
|
João Bier
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/06/2005 15:48:44
|
Rafael Nunes
Moderador
![[Avatar]](/images/avatar/d072677d210ac4c03ba046120f0802ec.png)
Membro desde: 09/10/2003 13:41:06
Mensagens: 2890
Localização: sao bernardo do campo
Offline
|
Na verdade minha dúvida em específico é: Ele não vai criar um objeto novo em ambos os casos?Qual a diferença então de fazer um e outro?
|
------------------------------------------------------------------
"Think different? I'd be happy if most people would just think..."
http://www.yaw.com.br
http://twitter.com/rafanunes
http://twitter.com/youandwe
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/06/2005 16:06:44
|
marcioa1
Virtual Machine Man
![[Avatar]](/images/avatar/169779d3852b32ce8b1a1724dbf5217d.jpg)
Membro desde: 29/11/2003 12:52:10
Mensagens: 736
Localização: Valinhos-SP
Offline
|
Não,
Ele vai retornar o único objeto criado daquela classe. É o chamado pattern Singleton.
Observe que :
1 - o construtor é privado
2 - existe uma variável estática do mesmo tipo da classe que é iniciado com null. Variável estática indica que só existirá uma instancia por classe.
3 - existe um método público do tipo getClasse que irá retornar esta variável estática.
Não estou com o livro aqui mas deve ser isto que ele explica.
Márcio
|
SCJP 1.4, |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/06/2005 16:07:30
|
danieldestro
Moderador
![[Avatar]](/images/avatar/a5bfc9e07964f8dddeb95fc584cd965d.png)
Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline
|
|
gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/06/2005 16:10:01
|
Rafael Nunes
Moderador
![[Avatar]](/images/avatar/d072677d210ac4c03ba046120f0802ec.png)
Membro desde: 09/10/2003 13:41:06
Mensagens: 2890
Localização: sao bernardo do campo
Offline
|
Putz, é mesmo, o static vai garantir que será chamado sempre um único objeto.
Grato.
|
------------------------------------------------------------------
"Think different? I'd be happy if most people would just think..."
http://www.yaw.com.br
http://twitter.com/rafanunes
http://twitter.com/youandwe
|
|
|
 |
|
|