Diferența Dintre Constructor și Distructor

Cuprins:

Diferența Dintre Constructor și Distructor
Diferența Dintre Constructor și Distructor

Video: Diferența Dintre Constructor și Distructor

Video: Diferența Dintre Constructor și Distructor
Video: POO: Constructori si destructor 2024, Decembrie
Anonim

Diferența cheie - Constructor vs Destructor

Majoritatea limbajelor de programare acceptă programarea orientată pe obiecte (OOP). Este paradigma care ajută la modelarea unui software sau a unui program folosind obiecte. OOP îmbunătățește productivitatea și capacitatea de întreținere. În POO totul este considerat ca un obiect. Obiectele sunt create sau instanțiate folosind clase. Constructor și Destructor sunt termeni comuni în programarea orientată pe obiecte. Acest articol discută diferența dintre un constructor și un destructor. Un constructor și un destructor sunt funcții membre speciale într-o clasă. Un constructor și un destructor au același nume ca și clasa, dar distructorul are un semn tilde (~). Diferența cheie între un constructor și un destructor este că un constructor este utilizat pentru a aloca memorie unui obiect, în timp ce un destructor este utilizat pentru a deloca memoria unui obiect.

CUPRINS

1. Prezentare generală și diferența cheie

2. Ce este un constructor

3. Ce este un destructor

4. Asemănări între constructor și destructor

5. Comparație side by side - Constructor vs Destructor în formă tabelară

6. Rezumat

Ce este un constructor?

Un constructor este o funcție membru specială din clasă pentru a aloca memorie unui obiect. Poate fi folosit pentru a furniza valori pentru membrii datelor. Constructorul este invocat atunci când obiectul este creat. Are același nume ca și numele clasei. Un constructor nu returnează nicio valoare. Prin urmare, nu conține un tip de returnare. Un constructor poate accepta, de asemenea, parametrii. Un constructor cu parametri este cunoscut ca un constructor parametrizat.

Un exemplu de constructor este următorul.

public class Rectangle {

lungime int, lățime;

dreptunghi public (int p, int q) {

lungime = p;

lățime = q;

}

public int calculateArea () {

retur (lungime * latime);

}

}

Conform piesei de cod de mai sus, constructorul are același nume cu numele clasei. Constructorul Rectangle acceptă doi parametri. Sunt p și q. Valoarea întregului p este atribuită lungimii. Valoarea întregului q este atribuită lățimii. În calcualteArea, înmulțirea lungimii și a lățimii este calculată pentru a găsi aria dreptunghiului. În programul principal, programatorul poate crea un obiect de tip Rectangle și poate transmite argumentele. de exemplu, dreptunghi rect1 = dreptunghi nou (2,3). Apoi, este chemat constructorul parametrizat și atribuie valorile lungimii și lățimii.

Diferența dintre constructor și distructor
Diferența dintre constructor și distructor

Figura 01: Constructor și Destructor

Când există un constructor fără parametri, acesta se numește constructor implicit. Dacă programatorul nu definește un constructor, va fi invocat constructorul implicit. Dacă există o clasă ca Student și când programatorul creează un obiect de tip Student, se numește constructorul implicit. de exemplu Student s1 = student nou (); Pot exista mai mulți constructori cu parametri diferiți și diferite tipuri de date într-o clasă. Constructorul adecvat poate fi apelat în consecință. Prin urmare, constructorii pot fi supraîncărcați.

Ce este un Destructor?

Un destructor este o funcție de membru specială din clasă. Este folosit pentru a aloca memorie pentru un obiect creat de constructor. Distructorul este invocat atunci când obiectul este distrus. Realizează stocarea de curățare care nu mai este necesară. La fel ca și constructorul, distructorul are același nume ca și clasa. De asemenea, conține un simbol tilde (~).

Un destructor nu returnează nicio valoare. Spre deosebire de un constructor, distructorul nu acceptă niciun parametru. Deci, distructorul nu acceptă supraîncărcarea. Declararea unui destructor este considerată o bună practică de programare, deoarece eliberează spațiul de memorie și spațiul respectiv poate fi folosit pentru stocarea altor obiecte. Sintaxa destructorului este similară cu ~ className () {}. de ex. ~ Rectangle () {}; Nu poate exista decât un singur distructor într-o clasă.

Care sunt asemănările dintre constructor și distructor?

  • Atât constructorul cât și destructorul sunt asociate cu obiecte.
  • Atât constructorul, cât și destructorul nu returnează nicio valoare.
  • Atât constructorul, cât și destructorul sunt apelate automat.

Care este diferența dintre constructor și distructor?

Difuzarea articolului din mijloc înainte de tabel

Constructor vs Destructor

Un constructor este un membru special din clasă care este utilizat pentru a aloca memorie unui obiect. Un destructor este un membru special al clasei care este folosit pentru a aloca memoria unui obiect.
Metoda de invocare
Un constructor este invocat atunci când obiectul este creat. Un destructor este apelat atunci când obiectul este distrus sau șters.
Utilizare
Un constructor este folosit pentru a aloca memoria obiectelor. Un destructor este folosit pentru a repartiza memoria obiectelor.
Parametrii
Un constructor acceptă parametrii. Un destructor nu acceptă parametrii.
Număr de constructori și distrugători
Pot exista mai mulți constructori cu un număr diferit de parametri și diferite tipuri de parametri. În clasă poate exista un singur distructor.
Viteza de execuție
Un constructor are același nume ca și numele clasei. Un destructor are același nume ca numele clasei cu simbolul tilde (~).
Suprasolicitare
Un constructor poate fi suprasolicitat. Un destructor nu poate fi suprasolicitat.

Rezumat - Constructor vs Destructor

OOP este o paradigmă comună în dezvoltarea de software. Poate simplifica un proiect complex. Un constructor și un destructor sunt utilizați în OOP. Un constructor și un destructor au același nume ca și clasa, dar distructorul are un semn ~. Diferența dintre un constructor și un destructor este că un constructor este utilizat pentru a aloca memorie unui obiect, în timp ce un destructor este folosit pentru a deloca memoria unui obiect.

Descărcați PDF-ul Constructor vs Destructor

Puteți descărca versiunea PDF a acestui articol și o puteți folosi în scopuri offline conform notei de citare. Vă rugăm să descărcați versiunea PDF aici: Diferența dintre constructor și distructor

Recomandat: