Ključna razlika - konstruktor proti destruktorju
Večina programskih jezikov podpira objektno usmerjeno programiranje (OOP). Paradigma je tista, ki pomaga modelirati programsko opremo ali program, ki uporablja predmete. OOP izboljšuje produktivnost in vzdrževanje. V OOP se vse šteje za objekt. Predmeti se ustvarijo ali ustvarijo z uporabo razredov. Konstruktor in destruktor sta pogosta izraza v objektno usmerjenem programiranju. Ta članek obravnava razliko med konstruktorjem in destruktorjem. Konstruktor in destruktor sta posebna funkcija člana v razredu. Konstruktor in destruktor imata isto ime kot razred, vendar ima destruktor znak tilde (~). Ključna razlika med konstruktorjem in destruktorjem je v tem, da se konstruktor uporablja za dodeljevanje pomnilnika predmetu, medtem ko se destruktor uporablja za sprostitev pomnilnika predmeta.
VSEBINA
1. Pregled in ključna razlika
2. Kaj je konstruktor
3. Kaj je destruktor
4. Podobnosti med konstruktorjem in destruktorjem
5. Vzporedna primerjava - konstruktor in destruktor v tabelarni obliki
6. Povzetek
Kaj je konstruktor?
Konstruktor je posebna funkcija člana v razredu, ki predmetu dodeli pomnilnik. Uporablja se lahko za podajanje vrednosti za člane podatkov. Konstruktor se prikliče, ko je objekt ustvarjen. Ima isto ime kot ime razreda. Konstruktor ne vrne nobene vrednosti. Zato ne vsebuje vrste vrnitve. Konstruktor lahko sprejme tudi parametre. Konstruktor s parametri je znan kot parametriziran konstruktor.
Primer konstruktorja je naslednji.
javni razred Pravokotnik {
int dolžina, širina;
javni pravokotnik (int p, int q) {
dolžina = p;
širina = q;
}
javni int izračunArea () {
vrnitev (dolžina * širina);
}
}
V skladu z zgornjim delom kode ima konstruktor enako ime kot ime razreda. Konstruktor Rectangle sprejema dva parametra. So p in q. Celoštevilčna vrednost p je dodeljena dolžini. Celoštevilčna vrednost q je dodeljena širini. V območju calcualteArea se izračuna množenje dolžine in širine, da se najde površina pravokotnika. V glavnem programu lahko programer ustvari objekt vrste Rectangle in posreduje argumente. npr. Pravokotnik rect1 = nov pravokotnik (2,3). Nato se pokliče parametrizirani konstruktor, ki vrednosti dodeli dolžini in širini.
Slika 01: Konstruktor in destruktor
Ko obstaja konstruktor brez kakršnih koli parametrov, se imenuje privzeti konstruktor. Če programer ne definira konstruktorja, se prikliče privzeti konstruktor. Če obstaja razred kot Študent in ko programer ustvari objekt tipa Študent, se pokliče privzeti konstruktor. npr. študent s1 = novi študent (); V razredu je lahko več konstruktorjev z različnimi parametri in različnimi tipi podatkov. Temu primerno lahko pokličemo ustrezen konstruktor. Zato so konstruktorji lahko preobremenjeni.
Kaj je destruktor?
Destruktor je posebna funkcija člana v razredu. Uporablja se za razporeditev pomnilnika za objekt, ki ga je ustvaril konstruktor. Destruktor se prikliče, ko je objekt uničen. Izvaja čiščenje pomnilnika, ki ni več potrebno. Tako kot konstruktor ima tudi destruktor isto ime kot razred. Vsebuje tudi simbol tilde (~).
Destruktor ne vrne nobene vrednosti. Za razliko od konstruktorja destruktor ne sprejema nobenih parametrov. Torej, destruktor ne podpira preobremenitve. Razglasitev destruktorja velja za dobro programsko prakso, ker sprosti pomnilniški prostor in ta prostor lahko uporabite za shranjevanje nekaterih drugih predmetov. Sintaksa destruktorja je podobna ~ className () {}. npr. ~ Pravokotnik () {}; V razredu je lahko samo en destruktor.
Kakšne so podobnosti med konstruktorjem in destruktorjem?
- Tako konstruktor kot destruktor sta povezana s predmeti.
- Tako konstruktor kot destruktor ne vrneta nobene vrednosti.
- Tako konstruktor kot destruktor se prikličeta samodejno.
Kakšna je razlika med konstruktorjem in destruktorjem?
Diff Article Sredina pred mizo
Konstruktor vs Destruktor |
|
Konstruktor je poseben član v razredu, ki se uporablja za dodelitev pomnilnika predmetu. | Destruktor je poseben član razreda, ki se uporablja za odstranjevanje pomnilnika predmeta. |
Metoda priklica | |
Ko je objekt ustvarjen, se pokliče konstruktor. | Destruktor se pokliče, ko je objekt uničen ali izbrisan. |
Uporaba | |
Konstruktor se uporablja za dodeljevanje pomnilnika za predmete. | Destruktor se uporablja za odstranjevanje pomnilnika za predmete. |
Parametri | |
Konstruktor sprejme parametre. | Destruktor ne sprejema parametrov. |
Število konstruktorjev in destruktorjev | |
Konstruktorjev je lahko več z različnim številom parametrov in različnimi vrstami parametrov. | V razredu je lahko en destruktor. |
Hitrost izvedbe | |
Konstruktor ima isto ime kot ime razreda. | Destruktor ima isto ime kot ime razreda s simbolom tilde (~). |
Preobremenitev | |
Konstruktor je lahko preobremenjen. | Destruktorja ni mogoče preobremeniti. |
Povzetek - Constructor vs Destructor
OOP je običajna paradigma pri razvoju programske opreme. Lahko poenostavi zapleten projekt. V OOP se uporabljata konstruktor in destruktor. Konstruktor in destruktor imata isto ime kot razred, vendar ima destruktor znak ~. Razlika med konstruktorjem in destruktorjem je v tem, da se konstruktor uporablja za dodelitev pomnilnika predmetu, medtem ko se destruktor uporablja za sprostitev pomnilnika predmeta.
Prenesite PDF Constructor vs Destructor
Lahko prenesete različico tega članka v PDF obliki in jo uporabite za namene brez povezave, kot je navedeno v opombi o navedbi. Prosimo, prenesite različico PDF tukaj: Razlika med konstruktorjem in destruktorjem