Rozdíl Mezi Konstruktérem A Destruktorem

Obsah:

Rozdíl Mezi Konstruktérem A Destruktorem
Rozdíl Mezi Konstruktérem A Destruktorem

Video: Rozdíl Mezi Konstruktérem A Destruktorem

Video: Rozdíl Mezi Konstruktérem A Destruktorem
Video: Explaining Mechanics: Armor Penetration 2024, Smět
Anonim

Klíčový rozdíl - konstruktér vs destruktor

Většina programovacích jazyků podporuje objektově orientované programování (OOP). Je to paradigma, které pomáhá modelovat software nebo program pomocí objektů. OOP zvyšuje produktivitu a udržovatelnost. V OOP je vše považováno za objekt. Objekty jsou vytvářeny nebo vytvářeny instancemi pomocí tříd. Constructor a Destructor jsou běžné pojmy v objektově orientovaném programování. Tento článek pojednává o rozdílech mezi konstruktorem a destruktorem. Konstruktor a destruktor jsou speciální členské funkce ve třídě. Konstruktor a destruktor mají stejný název jako třída, ale destruktor má znak tilda (~). Klíčovým rozdílem mezi konstruktorem a destruktorem je, že konstruktor se používá k přidělení paměti objektu, zatímco destruktor se používá k uvolnění paměti objektu.

OBSAH

1. Přehled a klíčový rozdíl

2. Co je konstruktor

3. Co je destruktor

4. Podobnosti mezi konstruktorem a destruktorem

5. Porovnání vedle sebe - konstruktor vs. destruktor ve formě tabulky

6. Shrnutí

Co je konstruktér?

Konstruktor je speciální členská funkce ve třídě k přidělení paměti objektu. Lze jej použít k poskytnutí hodnot pro datové členy. Konstruktor je vyvolán, když je objekt vytvořen. Má stejný název jako název třídy. Konstruktor nevrací žádnou hodnotu. Proto neobsahuje návratový typ. Konstruktor může také přijmout parametry. Konstruktor s parametry je známý jako parametrizovaný konstruktor.

Příklad konstruktoru je následující.

veřejná třída Obdélník {

int délka, šířka;

public Rectangle (int p, int q) {

délka = p;

šířka = q;

}

public int CalcArea () {

návrat (délka * šířka);

}

}

Podle výše uvedeného kódu má konstruktor stejný název jako název třídy. Konstruktor Rectangle přijímá dva parametry. Jsou to p a q. Celočíselná hodnota p je přiřazena délce. Celočíselná hodnota q je přiřazena šířce. V oblasti calcualteArea se vypočítá násobení délky a šířky k nalezení oblasti obdélníku. V hlavním programu může programátor vytvořit objekt typu Rectangle a předat argumenty. např. Obdélník rect1 = nový Obdélník (2,3). Potom se zavolá parametrizovaný konstruktor a přiřadí hodnoty délce a šířce.

Rozdíl mezi konstruktérem a destruktorem
Rozdíl mezi konstruktérem a destruktorem

Obrázek 01: Konstruktor a destruktor

Pokud existuje konstruktor bez jakýchkoli parametrů, nazývá se výchozí konstruktor. Pokud programátor nedefinuje konstruktor, bude vyvolán výchozí konstruktor. Pokud existuje třída jako Student a když programátor vytvoří objekt typu Student, volá se výchozí konstruktor. např. Student s1 = nový Student (); Ve třídě může být více konstruktorů s různými parametry a různými datovými typy. Příslušný konstruktor lze podle toho vyvolat. Proto mohou být konstruktory přetížené.

Co je destruktor?

Destruktor je speciální členská funkce ve třídě. Používá se k de-alokaci paměti pro objekt vytvořený konstruktorem. Destruktor je vyvolán, když je objekt zničen. Provádí úložiště pro vyčištění, které již není potřeba. Stejně jako konstruktor má destruktor stejný název jako třída. Obsahuje také symbol vlnovky (~).

Destruktor nevrací žádnou hodnotu. Na rozdíl od konstruktoru destruktor nepřijímá žádné parametry. Destruktor tedy nepodporuje přetížení. Deklarace destruktoru je považována za dobrou programovací praxi, protože uvolňuje paměťový prostor a tento prostor lze použít pro ukládání některých dalších objektů. Syntaxe destruktoru je podobná ~ className () {}. např. ~ Rectangle () {}; Ve třídě může být pouze jeden destruktor.

Jaké jsou podobnosti mezi konstruktérem a destruktorem?

  • Konstruktor i destruktor jsou spojeny s objekty.
  • Konstruktor i destruktor nevracejí žádnou hodnotu.
  • Konstruktor i destruktor jsou volány automaticky.

Jaký je rozdíl mezi konstruktérem a destruktorem?

Rozdílný článek uprostřed před tabulkou

Constructor vs Destructor

Konstruktor je speciální člen ve třídě, který se používá k přidělení paměti objektu. Destruktor je speciální člen třídy, který se používá k uvolnění paměti objektu.
Způsob vyvolání
Při vytváření objektu je vyvolán konstruktor. Destruktor je volán, když je objekt zničen nebo odstraněn.
Používání
K přidělení paměti pro objekty se používá konstruktor. Destruktor se používá k uvolnění paměti pro objekty.
Parametry
Konstruktor přijímá parametry. Destruktor nepřijímá parametry.
Počet konstruktérů a ničitelů
Může existovat více konstruktorů s různým počtem parametrů a různými typy parametrů. Ve třídě může být jeden destruktor.
Rychlost provedení
Konstruktor má stejný název jako název třídy. Destruktor má stejný název jako název třídy se symbolem vlnovky (~).
Přetížení
Konstruktor může být přetížen. Destruktor nelze přetížit.

Shrnutí - Konstruktor vs Destruktor

OOP je běžným paradigmatem při vývoji softwaru. Složitý projekt může zjednodušit. V OOP se používá konstruktor a destruktor. Konstruktor a destruktor mají stejný název jako třída, ale destruktor má znak ~. Rozdíl mezi konstruktorem a destruktorem spočívá v tom, že konstruktor se používá k přidělení paměti objektu, zatímco destruktor se používá k uvolnění paměti objektu.

Stáhněte si PDF Constructor vs Destructor

Můžete si stáhnout PDF verzi tohoto článku a použít ji pro offline účely podle citace. Stáhněte si verzi PDF zde: Rozdíl mezi konstruktérem a destruktorem

Doporučená: