Diferença entre construtor e destruidor

Índice:

Diferença entre construtor e destruidor
Diferença entre construtor e destruidor

Vídeo: Diferença entre construtor e destruidor

Vídeo: Diferença entre construtor e destruidor
Vídeo: 50 - Certificação Java (Diferença entre o construtor padrão e construtores definidos pelo usuário) 2024, Novembro
Anonim

Key Difference – Construtor vs Destruidor

A maioria das linguagens de programação suporta Programação Orientada a Objetos (OOP). É o paradigma que ajuda a modelar um software ou programa usando objetos. OOP melhora a produtividade e a capacidade de manutenção. Na OOP tudo é considerado como um objeto. Os objetos são criados ou instanciados usando classes. Construtor e Destruidor são termos comuns em Programação Orientada a Objetos. Este artigo discute a diferença entre um construtor e um destruidor. Um construtor e um destruidor são funções-membro especiais em uma classe. Um construtor e um destruidor têm o mesmo nome que a classe, mas o destruidor tem um sinal de til (~). A principal diferença entre um construtor e um destruidor é que um construtor é usado para alocar memória para um objeto enquanto um destruidor é usado para desalocar a memória de um objeto.

O que é um Construtor?

Um construtor é uma função membro especial na classe para alocar memória para um objeto. Ele pode ser usado para fornecer valores para os membros de dados. O construtor é invocado quando o objeto é criado. Tem o mesmo nome que o nome da classe. Um construtor não retorna nenhum valor. Portanto, ele não contém um tipo de retorno. Um construtor também pode aceitar parâmetros. Um construtor com parâmetros é conhecido como um construtor parametrizado.

Um exemplo de construtor é o seguinte.

classe pública Rectangle{

int comprimento, largura;

public Rectangle(int p, int q){

comprimento=p;

largura=q;

}

public int calcularArea(){

return (comprimentolargura);

}

}

De acordo com o trecho de código acima, o construtor tem o mesmo nome que o nome da classe. O construtor Rectangle aceita dois parâmetros. São p e q. O valor inteiro p é atribuído ao comprimento. O valor inteiro q é atribuído à largura. No calcu alteArea, a multiplicação de comprimento e largura é calculada para encontrar a área do retângulo. No programa principal, o programador pode criar um objeto do tipo Rectangle e passar os argumentos. por exemplo. Retângulo ret1=new Retângulo(2, 3). Em seguida, o construtor parametrizado é chamado e atribui os valores ao comprimento e à largura.

Diferença entre Construtor e Destruidor
Diferença entre Construtor e Destruidor

Figura 01: Construtor e Destruidor

Quando há um construtor sem nenhum parâmetro, ele é chamado de construtor padrão. Se o programador não definir um construtor, o construtor padrão será invocado. Se houver uma classe como Aluno e quando o programador criar um objeto do tipo Aluno, o construtor padrão é chamado. por exemplo. Aluno s1=new Aluno(); Pode haver vários construtores com diferentes parâmetros e diferentes tipos de dados em uma classe. O construtor apropriado pode ser chamado de acordo. Portanto, os construtores podem ser sobrecarregados.

O que é um Destruidor?

Um destruidor é uma função membro especial na classe. Ele é usado para desalocar memória para um objeto criado pelo construtor. O destruidor é invocado quando o objeto é destruído. Ele realiza o armazenamento de limpeza que não é mais necessário. Assim como o construtor, o destruidor tem o mesmo nome da classe. Ele também contém um símbolo de til (~).

Um destruidor não retorna nenhum valor. Ao contrário de um construtor, o destruidor não aceita nenhum parâmetro. Portanto, o destruidor não suporta sobrecarga. Declarar um destruidor é considerado uma boa prática de programação porque libera o espaço de memória e esse espaço pode ser usado para armazenar alguns outros objetos. A sintaxe do destruidor é semelhante a ~className() { }. por exemplo. ~Retângulo() { }; Só pode haver um único destruidor em uma classe.

Quais são as semelhanças entre construtor e destruidor?

  • O construtor e o destruidor estão associados a objetos.
  • O construtor e o destruidor não retornam nenhum valor.
  • O construtor e o destruidor são chamados automaticamente.

Qual é a diferença entre construtor e destruidor?

Construtor vs Destruidor

Um construtor é um membro especial na classe que é usado para alocar memória para um objeto. Um destruidor é um membro especial da classe que é usado para desalocar a memória de um objeto.
Método de Invocação
Um construtor é invocado quando o objeto é criado. Um destruidor é chamado quando o objeto é destruído ou excluído.
Uso
Um construtor é usado para alocar memória para os objetos. Um destruidor é usado para desalocar memória para os objetos.
Parâmetros
Um construtor aceita parâmetros. Um destruidor não aceita parâmetros.
Número de Construtores e Destrutores
Pode haver vários construtores com um número diferente de parâmetros e diferentes tipos de parâmetros. Pode haver um único destruidor na classe.
Velocidade de Execução
Um construtor tem o mesmo nome que o nome da classe. Um destruidor tem o mesmo nome que o nome da classe com um símbolo de til (~).
Sobrecarga
Um construtor pode ser sobrecarregado. Um destruidor não pode ser sobrecarregado.

Resumo – Construtor vs Destruidor

OOP é um paradigma comum no desenvolvimento de software. Pode simplificar um projeto complexo. Um construtor e um destruidor são usados em OOP. Um construtor e um destruidor têm o mesmo nome que a classe, mas o destruidor tem um sinal ~. A diferença entre um construtor e um destruidor é que um construtor é usado para alocar memória para um objeto enquanto um destruidor é usado para desalocar a memória de um objeto.

Baixe o PDF de Construtor vs Destruidor

Você pode baixar a versão em PDF deste artigo e usá-la para fins offline conforme nota de citação. Faça o download da versão em PDF aqui: Diferença entre Construtor e Destruidor

Recomendado: