Rozdiel medzi konštruktorom a deštruktorom

Obsah:

Rozdiel medzi konštruktorom a deštruktorom
Rozdiel medzi konštruktorom a deštruktorom

Video: Rozdiel medzi konštruktorom a deštruktorom

Video: Rozdiel medzi konštruktorom a deštruktorom
Video: Катя и Макс выбрали победителей игрушек 2024, November
Anonim

Kľúčový rozdiel – Konštruktor vs Deštruktor

Väčšina programovacích jazykov podporuje objektovo orientované programovanie (OOP). Je to paradigma, ktorá pomáha modelovať softvér alebo program pomocou objektov. OOP zlepšuje produktivitu a udržiavateľnosť. V OOP sa všetko považuje za objekt. Objekty sa vytvárajú alebo vytvárajú pomocou tried. Konštruktor a deštruktor sú bežné pojmy v objektovo orientovanom programovaní. Tento článok popisuje rozdiel medzi konštruktorom a deštruktorom. Konštruktor a deštruktor sú špeciálne členské funkcie v triede. Konštruktor a deštruktor majú rovnaký názov ako trieda, ale deštruktor má znamienko vlnovky (~). Kľúčový rozdiel medzi konštruktorom a deštruktorom je v tom, že konštruktor sa používa na pridelenie pamäte objektu, zatiaľ čo deštruktor sa používa na uvoľnenie pamäte objektu.

Čo je to konštruktér?

Konštruktor je špeciálna členská funkcia v triede na pridelenie pamäte objektu. Môže sa použiť na poskytnutie hodnôt pre dátové členy. Konštruktor sa vyvolá pri vytvorení objektu. Má rovnaký názov ako názov triedy. Konštruktor nevracia žiadnu hodnotu. Preto neobsahuje návratový typ. Konštruktor môže tiež akceptovať parametre. Konštruktor s parametrami je známy ako parametrizovaný konštruktor.

Príklad konštruktora je nasledujúci.

verejná trieda obdĺžnik{

int dĺžka, šírka;

public Rectangle(int p, int q){

dĺžka=p;

width=q;

}

public int vypočítaťArea(){

return (dĺžkašírka);

}

}

Podľa vyššie uvedenej časti kódu má konštruktor rovnaký názov ako názov triedy. Konštruktor Rectangle akceptuje dva parametre. Sú to p a q. K dĺžke je priradená celočíselná hodnota p. K šírke je priradená celočíselná hodnota q. V calcu alteArea sa vypočíta násobenie dĺžky a šírky, aby sa zistila plocha obdĺžnika. V hlavnom programe môže programátor vytvoriť objekt typu Rectangle a odovzdať argumenty. napr. Obdĺžnik rect1=new Rectangle(2, 3). Potom sa zavolá parametrizovaný konštruktor a priradí hodnoty dĺžke a šírke.

Rozdiel medzi konštruktorom a deštruktorom
Rozdiel medzi konštruktorom a deštruktorom

Obrázok 01: Konštruktor a deštruktor

Ak existuje konštruktor bez akýchkoľvek parametrov, nazýva sa predvolený konštruktor. Ak programátor nedefinuje konštruktor, vyvolá sa predvolený konštruktor. Ak existuje trieda ako Študent a keď programátor vytvorí objekt typu Student, zavolá sa predvolený konštruktor. napr. Študent s1=nový študent(); V triede môže byť viacero konštruktorov s rôznymi parametrami a rôznymi typmi údajov. Podľa toho možno zavolať príslušný konštruktor. Preto môžu byť konštruktéri preťažení.

Čo je deštruktor?

Deštruktor je špeciálna členská funkcia v triede. Používa sa na alokáciu pamäte pre objekt vytvorený konštruktorom. Deštruktor sa vyvolá, keď je objekt zničený. Vykonáva vyčistenie, ktoré už nie je potrebné. Podobne ako konštruktor, aj deštruktor má rovnaký názov ako trieda. Obsahuje tiež symbol vlnovky (~).

Deštruktor nevracia žiadnu hodnotu. Na rozdiel od konštruktora, deštruktor neakceptuje žiadne parametre. Deštruktor teda nepodporuje preťaženie. Vyhlásenie deštruktora sa považuje za dobrú programovaciu prax, pretože uvoľňuje pamäťový priestor a tento priestor možno použiť na uloženie niektorých iných objektov. Syntax deštruktora je podobná ako ~className() {}. napr. ~Obdĺžnik() { }; V triede môže byť iba jeden deštruktor.

Aké sú podobnosti medzi konštruktorom a deštruktorom?

  • Konštruktor aj deštruktor sú spojené s objektmi.
  • Konštruktor aj deštruktor nevracajú žiadnu hodnotu.
  • Konštruktor aj deštruktor sa volajú automaticky.

Aký je rozdiel medzi konštruktorom a deštruktorom?

Konštruktor vs Deštruktor

Konštruktor je špeciálny člen v triede, ktorý sa používa na pridelenie pamäte objektu. Deštruktor je špeciálny člen triedy, ktorý sa používa na uvoľnenie pamäte objektu.
Spôsob vyvolania
Pri vytváraní objektu sa vyvolá konštruktor. Pri zničení alebo odstránení objektu sa zavolá deštruktor.
Použitie
Na pridelenie pamäte pre objekty sa používa konštruktor. Deštruktor sa používa na uvoľnenie pamäte pre objekty.
Parametre
Konštruktor akceptuje parametre. Deštruktor neprijíma parametre.
Počet konštruktérov a deštruktorov
Môže existovať viacero konštruktorov s rôznym počtom parametrov a rôznymi typmi parametrov. V triede môže byť jeden deštruktor.
Rýchlosť vykonania
Konštruktor má rovnaký názov ako názov triedy. Deštruktor má rovnaký názov ako názov triedy so symbolom vlnovky (~).
Preťaženie
Konštruktor môže byť preťažený. Deštruktor nemôže byť preťažený.

Zhrnutie – Konštruktor verzus Deštruktor

OOP je bežná paradigma vo vývoji softvéru. Môže zjednodušiť zložitý projekt. V OOP sa používa konštruktor a deštruktor. Konštruktor a deštruktor majú rovnaký názov ako trieda, ale deštruktor má znak ~. Rozdiel medzi konštruktorom a deštruktorom je v tom, že konštruktor sa používa na pridelenie pamäte objektu, zatiaľ čo deštruktor sa používa na uvoľnenie pamäte objektu.

Stiahnite si PDF Constructor vs Destructor

Verziu tohto článku si môžete stiahnuť vo formáte PDF a použiť ju na offline účely podľa citácie. Stiahnite si verziu PDF tu: Rozdiel medzi konštruktorom a deštruktorom

Odporúča: