Por que evitar finalizers? Li isso no effective java 2

3 respostas
SanjuanRJ

Estava lendo o livro effective java 2 e me deparei com esse item do capítulo1.

“Item 7: Avoid finalizers”

“Finalizers are unpredictable, often dangerous, and generally unnecessary.”

3 Respostas

A

O finalizer que ele se refere é o método finalize da classe Object que é chamado no momento em que um objeto é limpo da memória pelo garbage collector.
Como não é possível determinar quando uma classe é efetivamente limpa da memória, o seu uso não é recomendado.

O finaly do try … catch … finaly é altamente recomendado principalmente quando alocamos recursos que devem explicitamente serem liberados como conexões de banco de dados, arquivos, sockets, etc…

SanjuanRJ

Agora que eu re-li eu entendi melhor.

É que eu nunca tinha usado esse finalize() do java.

eltonk

SanjuanRJ:

É que eu nunca tinha usado esse finalize() do java.

Se você conhecer alguém que já usou, considere-se um dos poucos (in)felizes do mundo :lol:

Criado 26 de fevereiro de 2009
Ultima resposta 5 de mar. de 2009
Respostas 3
Participantes 3