Skirtumas Tarp Konstruktoriaus Ir Naikintuvo

Turinys:

Skirtumas Tarp Konstruktoriaus Ir Naikintuvo
Skirtumas Tarp Konstruktoriaus Ir Naikintuvo

Video: Skirtumas Tarp Konstruktoriaus Ir Naikintuvo

Video: Skirtumas Tarp Konstruktoriaus Ir Naikintuvo
Video: Žaislinis lėktuvas, naikintuvas 2024, Balandis
Anonim

Pagrindinis skirtumas - konstruktorius ir naikintojas

Dauguma programavimo kalbų palaiko į objektą orientuotą programavimą (OOP). Tai paradigma, kuri padeda modeliuoti programinę įrangą ar programą, naudojant objektus. OOP pagerina produktyvumą ir palaikomumą. OOP viskas laikoma objektu. Objektai yra kuriami arba išgaunami naudojant klases. Konstruktorius ir Destruktorius yra įprasti objektų programavimo terminai. Šiame straipsnyje aptariamas konstruktoriaus ir destruktoriaus skirtumas. Konstruktorius ir destruktorius yra speciali nario funkcija klasėje. Konstruktorius ir destruktorius turi tą patį pavadinimą kaip klasė, bet destruktorius turi tildės (~) ženklą. Esminis konstruktoriaus ir destruktoriaus skirtumas yra tas, kad konstruktorius naudojamas objektui skirti atmintį, o destruktorius naudojamas objekto atminties paskirstymui.

TURINYS

1. Apžvalga ir pagrindiniai skirtumai

2. Kas yra konstruktorius

3. Kas yra naikintuvas

4. Konstruktoriaus ir naikintuvo panašumai

5. Šoninis palyginimas - konstruktorius ir destruktorius lentelių pavidalu

6. Santrauka

Kas yra konstruktorius?

Konstruktorius yra speciali nario funkcija klasėje, skirta objektui skirti atmintį. Ją galima naudoti duomenų nariams reikšmėms pateikti. Sukūrus objektą, iškviečiamas konstruktorius. Jis turi tą patį pavadinimą, kaip ir klasės pavadinimas. Konstruktorius negrąžina jokios vertės. Todėl jame nėra grąžinimo tipo. Konstruktorius taip pat gali priimti parametrus. Konstruktorius su parametrais yra žinomas kaip parametruojamas konstruktorius.

Konstruktoriaus pavyzdys yra toks.

visuomenės klasės stačiakampis {

int ilgis, plotis;

viešasis stačiakampis (int p, int q) {

ilgis = p;

plotis = q;

}

public int apskaičiuoti plotas () {

grįžimas (ilgis * plotis);

}

}

Pagal pirmiau pateiktą kodą konstruktorius turi tą patį pavadinimą kaip ir klasės pavadinimas. Konstruktorius Stačiakampis priima du parametrus. Jie yra p ir q. Ilgiui priskiriama sveiko skaičiaus reikšmė p. Sveiko skaičiaus vertė q priskiriama plotiui. Programoje calcualteArea apskaičiuojamas ilgio ir pločio padauginimas, kad būtų galima rasti stačiakampio plotą. Pagrindinėje programoje programuotojas gali sukurti stačiakampio tipo objektą ir perduoti argumentus. pvz., stačiakampis tiesus1 = naujas stačiakampis (2,3). Tada iškviečiamas parametruojamas konstruktorius ir priskiria vertes ilgiui ir plotiui.

Skirtumas tarp konstruktoriaus ir naikintuvo
Skirtumas tarp konstruktoriaus ir naikintuvo

01 pav. Konstruktorius ir naikintuvas

Kai yra konstruktorius be jokių parametrų, jis vadinamas numatytuoju konstruktoriumi. Jei programuotojas neapibrėžia konstruktoriaus, bus iškviestas numatytasis konstruktorius. Jei yra „Student“klasė ir kai programuotojas sukuria „Student“tipo objektą, iškviečiamas numatytasis konstruktorius. pvz., studentas s1 = naujas studentas (); Klasėje gali būti keli konstruktoriai su skirtingais parametrais ir skirtingais duomenų tipais. Atitinkamai galima iškviesti tinkamą konstruktorių. Todėl konstruktoriai gali būti perkrauti.

Kas yra naikintuvas?

Destruktorius yra speciali nario funkcija klasėje. Jis naudojamas atkurti konstruktoriaus sukurto objekto atmintį. Destruktorius iškviečiamas sunaikinus objektą. Ji vykdo nebereikalingą valymo saugyklą. Kaip ir konstruktorius, destruktorius turi tą patį pavadinimą kaip ir klasė. Jame taip pat yra tildės (~) simbolis.

Destruktorius negrąžina jokios vertės. Skirtingai nei konstruktorius, destruktorius nepriima jokių parametrų. Taigi, destruktorius nepalaiko perkrovos. Destruktoriaus paskelbimas laikomas gera programavimo praktika, nes jis atlaisvina atminties vietą ir ta vieta gali būti naudojama kai kuriems kitiems objektams laikyti. Destruktoriaus sintaksė yra panaši į ~ className () {}. pvz. ~ Stačiakampis () {}; Klasėje gali būti tik vienas destruktorius.

Kokie yra konstruktoriaus ir naikintuvo panašumai?

  • Ir konstruktorius, ir destruktorius siejami su objektais.
  • Konstruktorius ir destruktorius negrąžina jokios vertės.
  • Tiek konstruktorius, tiek destruktorius vadinami automatiškai.

Koks skirtumas tarp konstruktoriaus ir naikintuvo?

Skirtingas straipsnis viduryje prieš lentelę

Konstruktorius vs sunaikintojas

Konstruktorius yra specialus klasės narys, kuris naudojamas objektui skirti atmintį. Destruktorius yra specialus klasės narys, naudojamas objekto atminčiai paskirstyti.
Iškvietimo metodas
Sukūrus objektą, pasitelkiamas konstruktorius. Destruktorius iškviečiamas, kai objektas sunaikinamas arba pašalinamas.
Naudojimas
Objektams skirti atminčiai naudojamas konstruktorius. Objektų atminčiai paskirstyti naudojamas destruktorius.
Parametrai
Konstruktorius priima parametrus. Destruktorius nepriima parametrų.
Konstruktorių ir ardytojų skaičius
Konstruktoriai gali būti keli su skirtingu parametrų skaičiumi ir skirtingų tipų parametrais. Klasėje gali būti vienas naikintuvas.
Vykdymo greitis
Konstruktorius turi tą patį pavadinimą, kaip ir klasės pavadinimas. Destruktorius turi tą patį pavadinimą kaip klasės pavadinimas su tildės (~) simboliu.
Perkrovimas
Konstruktorius gali būti perkrautas. Destruktoriaus negalima perkrauti.

Santrauka - konstruktorius vs sunaikintojas

OOP yra įprasta programinės įrangos kūrimo paradigma. Tai gali supaprastinti sudėtingą projektą. Konstruktorius ir destruktorius naudojami OOP. Konstruktorius ir destruktorius turi tą patį pavadinimą kaip klasė, tačiau destruktorius turi ~ ženklą. Skirtumas tarp konstruktoriaus ir destruktoriaus yra tas, kad konstruktorius naudojamas objektui skirti atmintį, o destruktorius naudojamas objekto atminties paskirstymui.

Atsisiųskite „Constructor vs Destructor“PDF failą

Galite atsisiųsti šio straipsnio PDF versiją ir naudoti ją neprisijungus, kaip nurodyta citatos pastaboje. Atsisiųskite PDF versiją čia: Skirtumas tarp konstruktoriaus ir naikintuvo

Rekomenduojama: