Pessoal,
Como posso destruir um objeto (classe de negócio) ? Já observei que para as classes visuais existe o método dispose(), porém, como eu devo fazer para as demais classes?
Pessoal,
Como posso destruir um objeto (classe de negócio) ? Já observei que para as classes visuais existe o método dispose(), porém, como eu devo fazer para as demais classes?
Ola
Só vc setar null à referencia dela… e o GC se encarrega do resto.
Não existe nenhuma forma de “destruir” um objeto explicitamente, quem faz isso é o Garbage Collector, é não há nenhuma forma de você controlar ele… no maximo você pode remover as referencias para o objeto para que ele torne-se elegivel para a coleta…
Classe obj = new Classe();
obj = null; // não destruiu o objeto, só removeu a referencia
So complementando o que o jair disse…
[quote=“jairelton”]Não existe nenhuma forma de “destruir” um objeto explicitamente, quem faz isso é o Garbage Collector, é não há nenhuma forma de você controlar ele… no maximo você pode remover as referencias para o objeto para que ele torne-se elegivel para a coleta…
Classe obj = new Classe();
obj = null; // não destruiu o objeto, só removeu a referencia
[/quote]
Quando tu chama do System.gc(), não é garantido que o Carbage vai “Destruir o objeto”, e sim tu esta falando assim… “GC será que tu não pode (destruir o objeto) ?”, ok ?
Valeu pela ajuda, já estou estruturando o código para usar essa lógica.
Mas surgiu uma outra dúvida, tem com eu saber se existem outros ponteiros para o objeto que eu estou tentando destruir?
Tem não…
E só pra ficar beeem claro, você nunca conseguirá destruir um objeto, quem faz isso é só o Garbage Collector e você não consegue controlar ele… o maximo que você consegue é torna-lo elegivel à coleta, o que não significa que ele será coletado naquele momento…
Pessoal, obrigado pela ajuda!