Разлика между конструктор и разрушител

Ключова разлика - конструктор срещу пещ за горене на отпадъци
 

Повечето езици за програмиране поддържат обектно-ориентирано програмиране (OOP). Именно парадигмата помага за моделиране на софтуер или програма, използвайки обекти. OOP подобрява производителността и поддръжността. В OOP всичко се разглежда като обект. Обектите са създадени или създадени с помощта на класове. Конструктор и Деструктор са общи термини в обектно-ориентираното програмиране. Тази статия обсъжда разликата между конструктор и деструктор. Конструктор и деструктор са специални функции член в клас. Конструктор и деструктор имат същото име като класа, но деструкторът има знак tilde (~). Най- ключова разлика между конструктор и деструктор е това конструктор се използва за разпределяне на памет на обект, докато деструктор се използва за транслокационната памет на обект.

СЪДЪРЖАНИЕ

1. Преглед и ключова разлика
2. Какво е конструктор
3. Какво е разрушител
4. Прилики между конструктор и разрушител
5. Паралелно сравнение - Конструктор срещу Деструктор в таблична форма
6. Резюме

Какво е конструктор?

Конструктор е специална функция член в класа, за да разпределя памет на обект. Може да се използва за предоставяне на стойности за членовете на данните. Конструкторът се извиква, когато обектът е създаден. Той има същото име като името на класа. Конструктор не връща никаква стойност. Следователно той не съдържа тип връщане. Конструктор също може да приема параметри. Конструктор с параметри е известен като параметризиран конструктор.

Пример за конструктор е следният.

публичен клас Правоъгълник

int дължина, ширина;

обществен правоъгълник (int p, int q)

дължина = p;

ширина = q;

public int CalcuArea ()

връщане (дължина * ширина);

Според горния код, конструкторът има същото име като името на класа. Конструкторът правоъгълник приема два параметъра. Те са p и q. Цялата стойност p се присвоява на дължината. Цялата стойност q е присвоена на ширината. В CalcualteArea умножението на дължина и ширина се изчислява, за да се намери площта на правоъгълника. В основната програма програмистът може да създаде обект от тип Rectangle и да предаде аргументите. например Правоъгълник rect1 = нов правоъгълник (2,3). След това се извиква параметризираният конструктор и присвоява стойностите на дължината и ширината.

Фигура 01: Конструктор и разрушител

Когато има конструктор без никакви параметри, той се нарича конструктор по подразбиране. Ако програмистът не определи конструктор, конструкторът по подразбиране ще бъде извикан. Ако има клас като Student и когато програмистът създаде обект от тип Student, се извиква конструкторът по подразбиране. например Student s1 = нов Студент (); В клас може да има множество конструктори с различни параметри и различни типове данни. Подходящият конструктор може да бъде извикан съответно. Следователно, конструкторите могат да бъдат претоварени.

Какво е разрушител?

Деструкторът е специална функция член в класа. Използва се за разделяне на памет за обект, създаден от конструктора. Деструкторът се извиква, когато обектът е унищожен. Той извършва съхранение на почистване, което вече не е необходимо. Подобно на конструктора, деструкторът има същото име като класа. Той също така съдържа символ на тилда (~).

Деструктор не връща никаква стойност. За разлика от конструктор, деструкторът не приема никакви параметри. Така че, разрушителят не поддържа претоварване. Обявяването на деструктор се счита за добра практика на програмиране, тъй като освобождава пространството в паметта и това пространство може да се използва за съхранение на някои други обекти. Синтаксисът на деструктора е подобен на ~ className () . например ~ Правоъгълник () ; В клас може да има само един разрушител.

Какви са приликите между конструктор и разрушител?

  • И конструкторът, и деструкторът са свързани с обекти.
  • И конструкторът, и деструкторът не връщат никаква стойност.
  • И конструкторът, и деструкторът се извикват автоматично.

Каква е разликата между конструктор и разрушител?

Конструктор срещу Деструктор

Конструкторът е специален член в класа, който се използва за разпределяне на памет на обект. Деструкторът е специален член на класа, който се използва за разместване на паметта на обект.
 Метод на извикване
При създаването на обекта се извиква конструктор. Деструктор се извиква, когато обектът е унищожен или изтрит.
употреба
Конструктор се използва за разпределение на паметта за обектите. За разместване на паметта за обектите се използва разрушител.
 Параметри
Конструктор приема параметри. Деструктор не приема параметри.
Брой конструктори и разрушители
Може да има множество конструктори с различен брой параметри и различни видове параметри. В класа може да има единичен разрушител.
Скорост на изпълнение
Конструктор има същото име като името на класа. Деструктор има същото име като името на класа със символ на тилда (~).
Претоварването
Конструктор може да бъде претоварен. Деструктор не може да бъде претоварен.

резюме - конструктор срещу пещ за горене на отпадъци

OOP е често срещана парадигма в разработването на софтуер. Може да опрости сложен проект. Конструктор и деструктор се използват в OOP. Конструктор и деструктор имат същото име като класа, но деструкторът има знак ~. Разликата между конструктор и деструктор е, че конструктор се използва за разпределяне на памет на обект, докато деструктор се използва за транслокационната памет на обект.

Изтеглете PDF на Constructor vs Destructor

Можете да изтеглите PDF версията на тази статия и да я използвате за офлайн цели, съгласно цитираната бележка. Моля, изтеглете PDF версията тук: Разлика между Constructor и Destructor

справка:

1.tutorialspoint.com. „Java обект и класове.“ Точката, Налични тук