Por que as pessoas têm tanto medo de usar clone () (nas coleções e nas classes JDK)?
Várias vezes eu argumentei que usarclone()
não é uma prática tão ruim. Sim, eu conheço os argumentos.Bloch disse é mau. Ele realmente fez, mas ele disse que implementarclone()
é ruim. Por outro lado, o uso de clone, especialmente se for implementado corretamente por uma biblioteca confiável, como o JDK, está OK.
Ontem tive uma discussão sobreuma resposta minha que apenas sugere que o usoclone()
paraArrayList
está OK (e não recebi votos por esse motivo, eu acho).
Se olharmos para o@author
doArrayList
, podemos ver um nome familiar - Josh Bloch. assimclone()
emArrayList
(e outras coleções) está perfeitamente bem (basta olhar para suas implementações).
O mesmo vale paraCalendar
e talvez a maioria dosjava.lang
ejava.util
aulas.
Então, me dê uma razãopor que não usar clone()
com classes JDK?