Ключевое отличие - конструктор против деструктора
Большинство языков программирования поддерживают объектно-ориентированное программирование (ООП). Это парадигма, которая помогает моделировать программное обеспечение или программу с использованием объектов. ООП повышает производительность и ремонтопригодность. В ООП все рассматривается как объект. Объекты создаются или создаются с помощью классов. Конструктор и деструктор - общие термины в объектно-ориентированном программировании. В этой статье обсуждается разница между конструктором и деструктором. Конструктор и деструктор - это специальные функции-члены в классе. Конструктор и деструктор имеют то же имя, что и класс, но у деструктора есть знак тильды (~). Ключевое различие между конструктором и деструктором заключается в том, что конструктор используется для выделения памяти объекту, а деструктор используется для освобождения памяти объекта.
СОДЕРЖАНИЕ
1. Обзор и ключевые различия
2. Что такое конструктор
3. Что такое деструктор
4. Сходства между конструктором и деструктором
5. Сравнение бок о бок - конструктор и деструктор в табличной форме
6. Резюме
Что такое конструктор?
Конструктор - это специальная функция-член в классе, предназначенная для выделения памяти объекту. Его можно использовать для предоставления значений членам данных. Конструктор вызывается при создании объекта. Его имя совпадает с именем класса. Конструктор не возвращает никакого значения. Следовательно, он не содержит возвращаемого типа. Конструктор также может принимать параметры. Конструктор с параметрами известен как параметризованный конструктор.
Пример конструктора следующий.
public class Rectangle {
int длина, ширина;
public Rectangle (int p, int q) {
длина = p;
ширина = q;
}
public int calculateArea () {
возврат (длина * ширина);
}
}
Согласно приведенному выше фрагменту кода, конструктор имеет то же имя, что и имя класса. Конструктор Rectangle принимает два параметра. Это p и q. Длине присваивается целочисленное значение p. Ширине присваивается целочисленное значение q. В calcualteArea для определения площади прямоугольника вычисляется умножение длины и ширины. В основной программе программист может создать объект типа Rectangle и передать аргументы. например, прямоугольник rect1 = новый прямоугольник (2,3). Затем вызывается параметризованный конструктор, который присваивает значения длине и ширине.
Рисунок 01: Конструктор и деструктор
Если есть конструктор без параметров, он называется конструктором по умолчанию. Если программист не определяет конструктор, будет вызван конструктор по умолчанию. Если существует класс Student и когда программист создает объект типа Student, вызывается конструктор по умолчанию. например, Студент s1 = новый Студент (); В классе может быть несколько конструкторов с разными параметрами и разными типами данных. Соответственно можно вызвать соответствующий конструктор. Следовательно, конструкторы могут быть перегружены.
Что такое деструктор?
Деструктор - это специальная функция-член в классе. Он используется для освобождения памяти для объекта, созданного конструктором. Деструктор вызывается при уничтожении объекта. Он выполняет очистку хранилища, которое больше не требуется. Как и конструктор, деструктор имеет то же имя, что и класс. Он также содержит символ тильды (~).
Деструктор не возвращает никакого значения. В отличие от конструктора деструктор не принимает никаких параметров. Итак, деструктор не поддерживает перегрузку. Объявление деструктора считается хорошей практикой программирования, потому что оно освобождает пространство памяти, и это пространство можно использовать для хранения некоторых других объектов. Синтаксис деструктора похож на ~ className () {}. например, ~ Rectangle () {}; В классе может быть только один деструктор.
В чем сходство между конструктором и деструктором?
- И конструктор, и деструктор связаны с объектами.
- И конструктор, и деструктор не возвращают никакого значения.
- И конструктор, и деструктор вызываются автоматически.
В чем разница между конструктором и деструктором?
Различать статью в середине перед таблицей
Конструктор против Деструктора |
|
Конструктор - это специальный член класса, который используется для выделения памяти объекту. | Деструктор - это специальный член класса, который используется для освобождения памяти объекта. |
Метод вызова | |
Конструктор вызывается при создании объекта. | Деструктор вызывается, когда объект уничтожается или удаляется. |
Применение | |
Конструктор используется для выделения памяти для объектов. | Деструктор используется для освобождения памяти для объектов. |
Параметры | |
Конструктор принимает параметры. | Деструктор не принимает параметры. |
Количество конструкторов и деструкторов | |
Может быть несколько конструкторов с разным количеством параметров и разными типами параметров. | В классе может быть один деструктор. |
Скорость исполнения | |
Конструктор имеет то же имя, что и имя класса. | Имя деструктора совпадает с именем класса с символом тильды (~). |
Перегрузка | |
Конструктор может быть перегружен. | Деструктор не может быть перегружен. |
Резюме - Конструктор против Деструктора
ООП - распространенная парадигма в разработке программного обеспечения. Оно может упростить сложный проект. В ООП используются конструктор и деструктор. Конструктор и деструктор имеют то же имя, что и класс, но у деструктора есть знак ~. Разница между конструктором и деструктором заключается в том, что конструктор используется для выделения памяти объекту, а деструктор используется для освобождения памяти объекта.
Загрузить PDF-файл Constructor vs Destructor
Вы можете загрузить PDF-версию этой статьи и использовать ее в автономных целях в соответствии с примечанием к цитированию. Пожалуйста, скачайте PDF-версию здесь: Разница между конструктором и деструктором