Programação  
 
Conhecimento computador >> Programação >> Programação em Java >> 
O que é Finalize em Java
? Java usa um sistema de coleta de lixo para gerenciamento de memória. Enquanto isso leva uma carga excepcional fora do desenvolvedor - ele não tem mais para garantir os objetos são removidos manualmente da memória quando eles não estão mais em uso - mas também pode tirar algumas funcionalidades que os desenvolvedores de outras origens podem ser acostumado. Embora a funcionalidade de finalização não é exactamente o mesmo como um destruidor C + + , pode ser considerado o mais próximo de um análogo da linguagem Java fornece . Visão Geral de Coleta de Lixo

A coleta de lixo é um dos tópicos mais avançados em programação Java. Estritamente falando , os desenvolvedores Java pode ir carreiras inteiras sem nunca precisar saber muito sobre o coletor de lixo e como ele funciona . Essencialmente , cada objeto criado em um programa Java é registrado com o tempo de execução Java, juntamente com uma contagem de todos os lugares há uma referência existente para esse objeto. Quando um objeto já não é referido por quaisquer outros objetos , o sistema marca-o para coleta, e na próxima vez que o coletor de lixo é executado, ele exclui o objeto.
Básico de gerenciamento de memória em C + + < br >

as coisas são diferentes em outras linguagens de programação , como C + + , por exemplo. Em C + + , o promotor controla quando um objecto é removido da memória , ao contrário do sistema . Isto é conhecido como " gerenciamento de memória determinista ", e tem tanto seus prós e contras . O lado positivo principal para isso é que o desenvolvedor sabe exatamente quando no código o objeto é excluído . No entanto, é extremamente fácil de excluir um objeto que ainda possam estar em uso em outras partes do código.

Destruidores e Finalize

Em C + + , os desenvolvedores podem adicionar um destruidor de uma classe, que é um método que é chamado sempre que um objeto é excluído . Isso permite que o desenvolvedor para executar código quando o objeto não é mais necessário , talvez para apagar os seus filhos ou para limpar os recursos . Em Java , o sistema fornece o método finalize , que os desenvolvedores podem substituir para fornecer uma funcionalidade semelhante. A principal diferença é que o método finalize é chamado sempre que o tempo de execução determina que o objeto não tem mais referências e podem ser coletadas .
Use Com Cuidado

Enquanto finalize pode fornecer funcionalidade semelhante ao destruidor do C + +, ele realmente deve ser usado com cuidado . De um modo geral , ao substituir o método finalize pode ser perfeitamente bem para a maioria das situações , você não deve contar com ele para garantir recursos são limpos em um determinado momento . Por exemplo, se você tiver uma conexão de banco de dados aberto em um objeto que está fechado em finalizar , você ainda pode potencialmente criar muitas conexões com o banco de dados e passar o limite do banco de dados antes que o coletor de lixo finalizou todos os objetos - mesmo se você não já não têm referências a eles em qualquer lugar.

Anterior :

Próximo : No
  Os artigos relacionados
·O que poderia bloquear Java de modo que ele não funcio…
·Java Communications API Tutorial 
·Como adicionar int em uma String em Java 
·Como criar XMLs para um jogador JW 
·Como compilar uma Plataforma Android 
·Como substituir um método estático em Java 
·Como encontrar Chaves Estrangeiras Usando associações…
·Como liberar um leitor de buffer em Java 
·Como Chegar Jar Referências em Java Projeto 
·Como fazer um programa no NetBeans 
  Artigos em destaque
·Como controlar um robô com MATLAB 
·Como criar um aplicativo Java Swing no Netbeans 
·Dicas de Game Maker 
·Lista de comandos SQL 
·Como editar My Web Search Toolbar Ferramentas 
·Código MATLAB para White Noise 
·Como Incorporar a SRC dinâmico em HTML 
·Adicionando um nó TreeView 
·Como fechar serviços WCF 
·Como sair AVG 9 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados