Rozdiel medzi konštruktorom a ničiteľom

Kľúčový rozdiel - konštruktor proti ničiteľ
 

Väčšina programovacích jazykov podporuje objektovo orientované programovanie (OOP). Je to paradigma, ktorá pomáha modelovať softvér alebo program pomocou objektov. OOP zvyšuje produktivitu a udržiavateľnosť. V OOP sa všetko považuje za objekt. Objekty sú vytvárané alebo vytvárané pomocou tried. Konštruktor a ničiteľ 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á znak vlnovky (~). kľúčový rozdiel medzi konštruktorom a deštruktorom je to konštruktor sa používa na pridelenie pamäte k objektu, zatiaľ čo deštruktor sa používa na pridelenú pamäť objektu.

OBSAH

1. Prehľad a kľúčový rozdiel
2. Čo je to konštruktor
3. Čo je ničiteľ
4. Podobnosti medzi konštruktorom a ničiteľom
5. Porovnanie vedľa seba - Konštruktor verzus Destruktor v tabuľkovej forme
6. Zhrnutie

Čo je to konštruktor?

Konštruktor je špeciálna členská funkcia v triede na priradenie pamäte k objektu. Môže sa použiť na poskytnutie hodnôt pre členov údajov. 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;

verejný obdĺžnik (int p, int q)

length = p;

width = q;

public int calculationArea ()

návrat (dĺžka * šírka);

Podľa vyššie uvedeného kódu má konštruktor rovnaké meno ako názov triedy. Konštruktor Rectangle akceptuje dva parametre. Sú to p a q. Celá hodnota p je priradená dĺžke. Celá hodnota q je priradená šírke. V CalcualteArea sa vynásobí dĺžka a šírka, aby sa zistila plocha obdĺžnika. V hlavnom programe môže programátor vytvoriť objekt typu Obdĺžnik a odovzdať argumenty. napr. Obdĺžnik obdĺžnik1 = nový obdĺžnik (2,3). Potom sa zavolá parametrizovaný konštruktor a priradí hodnoty dĺžke a šírke.

Obrázok 01: Konštruktor a ničiteľ

Ak existuje konštruktor bez akýchkoľvek parametrov, nazýva sa predvolený konštruktor. Ak programátor nedefinuje konštruktora, vyvolá sa predvolený konštruktor. Ak existuje trieda ako Študent a keď programátor vytvorí objekt typu Študent, zavolá sa predvolený konštruktor. napr. Študent s1 = nový študent (); V triede môže byť viac konštruktorov s rôznymi parametrami a rôznymi dátovými typmi. Vhodný konštruktor môže byť nazvaný zodpovedajúcim spôsobom. Preto môžu byť stavitelia preťažení.

Čo je ničiteľ?

Deštruktor je špeciálna funkcia člena v triede. Používa sa na delokovanie pamäte pre objekt vytvorený konštruktorom. Deštruktor sa vyvolá, keď je objekt zničený. Vykonáva úložisko na čistenie, ktoré už nie je potrebné. Rovnako ako konštruktor, deštruktor má rovnaké meno ako trieda. Obsahuje tiež symbol vlnovky (~).

Ničiteľ nevracia žiadnu hodnotu. Na rozdiel od konštruktora deštruktor neakceptuje žiadne parametre. Ničiteľ preto nepodporuje preťaženie. Deklarovanie deštruktora sa považuje za dobrý programovací postup, pretože uvoľňuje pamäťový priestor a tento priestor sa môže použiť na ukladanie niektorých ďalších objektov. Syntax deštruktora je podobná ~ className () . napr. ~ Obdĺžnik () ; V triede môže byť iba jeden deštruktor.

Aké sú podobnosti medzi konštruktorom a ničiteľom?

  • 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 ničiteľom?

Konštruktor verzus Destructor

Konštruktor je špeciálny člen v triede, ktorý sa používa na priradenie pamäte k objektu. Deštruktor je špeciálny člen triedy, ktorý sa používa na pridelenie pamäte objektu.
 Spôsob vyvolania
Pri vytvorení objektu sa vyvolá konštruktor. Deštruktor sa volá, keď je objekt zničený alebo odstránený.
používanie
Konštruktor sa používa na pridelenie pamäte pre objekty. Deštruktor sa používa na pridelenie pamäte pre objekty.
 parametre
Konštruktor akceptuje parametre. Deštruktor neakceptuje parametre.
Počet konštruktorov a ničiteľov
Môže existovať viac konštruktorov s rôznym počtom parametrov a rôznymi typmi parametrov. V triede môže byť jeden deštruktor.
Rýchlosť vykonávania
Konštruktor má rovnaké meno ako názov triedy. Deštruktor má rovnaké meno ako názov triedy so symbolom vlnovky (~).
preťaženie
Konštruktor môže byť preťažený. Ničiteľ nemôže byť preťažený.

zhrnutie - staviteľ proti ničiteľ

OOP je bežná paradigma vo vývoji softvéru. Môže to zjednodušiť zložitý projekt. Konštruktor a deštruktor sa používajú v OOP. 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 k objektu, zatiaľ čo deštruktor sa používa na pridelenú pamäť objektu..

Stiahnite si PDF programu Constructor vs Destructor

Môžete si stiahnuť verziu tohto článku vo formáte PDF a použiť ju na účely offline podľa citácie. Stiahnite si PDF verziu tu: Rozdiel medzi Constructor a Destructor

referencie:

1.tutorialspoint.com. „Objekt a triedy Java.“ Bod, K dispozícii tu