Introdução ao Construtor e Destrutor

Construtor e Destrutor. O Construtor é uma função especial que tem o mesmo nome da classe em que foi definido. É chamado automaticamente sempre que uma nova instância é criada. É considerado como um tipo especial de função, pois não é necessário que seja chamado explicitamente usando o objeto. Destruidor pode ser definido como um tipo especial de método que pode ser revogado quando a instância é excluída. O objetivo do Destructor é liberar a memória que ele vincula enquanto a instância da classe foi criada. O conceito de Destructor está preocupado com o gerenciamento de memória, para que os recursos possam ser utilizados com eficiência. Em linguagens como C ++, existe o conceito de Destructor e pode ser invocado automaticamente assim que a instância for excluída, enquanto em uma linguagem como Java, o conceito de Destructor não existe. Deixou que o programa fosse escrito de maneira adequada, para poder ser compilado corretamente e ser leve em termos de consumo de memória.

Comparação cara a cara entre construtor e destruidor

Abaixo estão as 4 principais comparações entre construtor e destruidor

Principais diferenças entre construtor e destruidor

Existem várias diferenças entre construtores e destruidores. Abaixo estão algumas das diferenças comuns e importantes.

  • O construtor é chamado quando uma instância dessa classe é criada. Não precisa ser chamado explicitamente. No caso do destruidor, ele chama quando a instância de qualquer classe é excluída. Também é algo que entra automaticamente automaticamente após a exclusão do objeto.
  • O construtor leva a ocupar a memória do sistema, localizando-os nos recursos e é exatamente o oposto no caso do destruidor. No destruidor, a memória que foi atribuída aos recursos é liberada para poder ser usada por outro recurso.
  • Para declarar o construtor, não há necessidade de caracteres especiais. Pode-se apenas criar um método cujo nome seja semelhante ao da classe. No caso do destruidor, o sinal til deve ser usado para introduzir o destruidor no programa.
  • O construtor pode ser usado na linguagem de programação de nível alto e médio. Enquanto no caso do destruidor, ele não pode ser usado na linguagem de alto nível. O C ++ pode usar o destruidor, mas o mesmo não está disponível em Java. Isso se deve ao motivo de a linguagem de programação de alto nível ter seu próprio mecanismo de gerenciamento de memória.
  • O construtor pode ser usado com muita frequência no programa. É muito simples de usar e reduz a complexidade do programa. Por outro lado, o destruidor é preferido para ser usado quando houver necessidade de reduzir o consumo de memória pelos recursos do programa.

Comparação cara a cara entre Construtor e Destrutor

ConstrutorDestruidor
Chamado durante a criação da instância
Quando a instância ou objeto de qualquer classe é criada, isso leva à chamada automática do construtor, que fará com que todas as instruções do método construtor sejam executadas.
Chamado durante a exclusão da instância
Quando a instância ou o objeto é excluído, o destruidor é invocado automaticamente e depois, as instruções da classe destruidora são executadas seqüencialmente.
Ocupa memória
Enquanto a classe é invocada, ela aloca memória para todos os recursos que a classe usará ainda mais. Isso leva ao consumo da memória do sistema para armazenar os dados de forma permanente ou temporária.
Libera memória
Enquanto o destruidor é chamado, ele libera todas as memórias que os recursos foram ocupados. A memória liberada pode ser mais localizada em outros recursos que estão sendo usados ​​no programa.
Suportado em idiomas de nível médio e alto
O construtor é chamado automaticamente sempre que uma instância dessa classe é criada e esse recurso é suportado pelos dois tipos de idiomas: Linguagens de programação de nível médio e alto.
Suporte apenas no idioma de nível médio
Os recursos do destruidor são suportados apenas em uma linguagem de nível médio como C ++. Quando se trata de linguagem de alto nível como Java, não permite recursos como esse, pois possui seu próprio modo de gerenciar a memória.
Nenhum caractere especial é necessário durante a declaração
Para declarar o construtor, basta escrever o nome do método que deve ser o mesmo da classe. Não deve haver um caractere especial necessário para declarar um construtor.
Tilde é usado enquanto uma declaração
Para declarar o destruidor, será necessário usar um til. O nome do construtor deve ser seguido pelo sinal de til e terminar com colchetes pequenos, como ocorre em todas as funções.

Conclusão

  • O construtor não é nada diferente, mas apenas o método que tem o mesmo nome que o da classe. Não leva tempo para ser chamado depois que as instâncias são criadas. O objeto pode ser criado nesse caso, usando a mesma sintaxe usada para criar um objeto de qualquer classe. No momento em que o objeto é criado, ele ocupa o espaço na memória e coloca em execução a declaração do construtor.
  • O destruidor é algo exatamente oposto ao do construtor. É chamado imediatamente após o objeto ser excluído. Na verdade, quando o objeto é excluído, ele exclui todos os recursos que estavam localizados, o que leva a liberar todas as memórias reservadas por eles, para que os novos recursos possam usar essa memória. Embora existam algumas diferenças entre os dois conceitos, ambos desempenham um papel vital na programação e, especialmente, quando falamos de programação eficiente usando a linguagem de nível médio.

Artigos recomendados:

Este é um guia para a diferença entre construtor e destruidor. Aqui discutimos uma introdução ao Constructor e Destructor, as principais diferenças, juntamente com a tabela de comparação. Você também pode consultar nossos outros artigos sugeridos para saber mais -

  1. C ++ vs Java
  2. Perguntas da entrevista em C ++
  3. Perguntas da entrevista sobre coleções Java
  4. Carreira em Programação de Computadores