Większość języków programowania obsługuje programowanie obiektowe (OOP). Jest to paradygmat, który pomaga modelować oprogramowanie lub program przy użyciu obiektów. OOP poprawia wydajność i łatwość konserwacji. W OOP wszystko jest traktowane jako obiekt. Obiekty są tworzone lub tworzone za pomocą klas. Konstruktor i Niszczyciel są powszechnymi terminami w programowaniu obiektowym. W tym artykule omówiono różnicę między konstruktorem a destruktorem. Konstruktor i destruktor są specjalną funkcją składową w klasie. Konstruktor i destruktor mają taką samą nazwę jak klasa, ale destruktor ma znak tyldy (~). The kluczowa różnica między konstruktorem a destruktorem jest to konstruktor służy do przydzielania pamięci do obiektu, a destruktor jest używany do zwolnienia pamięci obiektu.
1. Przegląd i kluczowa różnica
2. Co to jest konstruktor
3. Co to jest Niszczyciel
4. Podobieństwa między konstruktorem a niszczycielem
5. Porównanie obok siebie - Konstruktor vs Niszczyciel w formie tabelarycznej
6. Podsumowanie
Konstruktor to specjalna funkcja składowa w klasie do przydzielania pamięci do obiektu. Można go użyć do podania wartości dla członków danych. Konstruktor jest wywoływany podczas tworzenia obiektu. Ma taką samą nazwę jak nazwa klasy. Konstruktor nie zwraca żadnej wartości. Dlatego nie zawiera typu zwrotu. Konstruktor może również akceptować parametry. Konstruktor z parametrami jest znany jako sparametryzowany konstruktor.
Przykład konstruktora jest następujący.
Prostokąt klasy publicznej
int długość, szerokość;
public Rectangle (int p, int q)
długość = p;
szerokość = q;
public int calcArea ()
return (długość * szerokość);
Zgodnie z powyższym fragmentem kodu konstruktor ma taką samą nazwę jak nazwa klasy. Konstruktor Prostokąt akceptuje dwa parametry. Są to p i q. Wartość całkowitą p przypisuje się do długości. Wartość całkowitą q przypisuje się do szerokości. W calcualteArea obliczane jest mnożenie długości i szerokości w celu znalezienia obszaru prostokąta. W programie głównym programista może utworzyć obiekt typu Rectangle i przekazać argumenty. na przykład Prostokąt rect1 = nowy prostokąt (2,3). Następnie wywoływany jest sparametryzowany konstruktor i przypisuje wartości do długości i szerokości.
Rysunek 01: Konstruktor i Niszczyciel
Gdy istnieje konstruktor bez żadnych parametrów, nazywany jest konstruktorem domyślnym. Jeśli programista nie zdefiniuje konstruktora, zostanie wywołany domyślny konstruktor. Jeśli istnieje klasa jako Student i gdy programista tworzy obiekt typu Student, wywoływany jest domyślny konstruktor. na przykład Student s1 = nowy Student (); W klasie może znajdować się wiele konstruktorów o różnych parametrach i różnych typach danych. Odpowiedni konstruktor można odpowiednio wywołać. Dlatego konstruktory mogą być przeciążone.
Destruktor to specjalna funkcja członka w klasie. Służy do zwolnienia pamięci dla obiektu utworzonego przez konstruktor. Destruktor jest wywoływany po zniszczeniu obiektu. Wykonuje przechowywanie, które nie jest już wymagane. Podobnie jak konstruktor, destruktor ma taką samą nazwę jak klasa. Zawiera także symbol tyldy (~).
Destruktor nie zwraca żadnej wartości. W przeciwieństwie do konstruktora, destruktor nie przyjmuje żadnych parametrów. Więc destruktor nie obsługuje przeciążania. Zadeklarowanie destruktora jest uważane za dobrą praktykę programistyczną, ponieważ zwalnia miejsce w pamięci i można go wykorzystać do przechowywania niektórych innych obiektów. Składnia destruktora jest podobna do ~ className () . na przykład ~ Rectangle () ; W klasie może być tylko jeden destruktor.
Konstruktor kontra niszczyciel | |
Konstruktor to specjalny element w klasie, który służy do przydzielania pamięci do obiektu. | Destruktor to specjalny element klasy służący do zwalniania pamięci obiektu. |
Metoda wywoływania | |
Konstruktor jest wywoływany podczas tworzenia obiektu. | Destruktor jest wywoływany, gdy obiekt jest niszczony lub usuwany. |
Stosowanie | |
Do przydzielenia pamięci dla obiektów służy konstruktor. | Destruktor służy do zwolnienia pamięci dla obiektów. |
Parametry | |
Konstruktor akceptuje parametry. | Destruktor nie akceptuje parametrów. |
Liczba konstruktorów i niszczycieli | |
Może istnieć wiele konstruktorów o różnej liczbie parametrów i różnych typach parametrów. | W klasie może znajdować się pojedynczy destruktor. |
Szybkość wykonania | |
Konstruktor ma taką samą nazwę jak nazwa klasy. | Destruktor ma taką samą nazwę jak nazwa klasy z symbolem tyldy (~). |
Przeciążenie | |
Konstruktor może być przeciążony. | Destruktora nie można przeciążać. |
OOP jest powszechnym paradygmatem w rozwoju oprogramowania. Może uprościć złożony projekt. Konstruktor i destruktor są używane w OOP. Konstruktor i destruktor mają taką samą nazwę jak klasa, ale destruktor ma znak ~. Różnica między konstruktorem a destruktorem polega na tym, że konstruktor służy do przydzielania pamięci do obiektu, a destruktor służy do zwolnienia pamięci obiektu.
Możesz pobrać wersję PDF tego artykułu i używać go do celów offline zgodnie z cytatem. Pobierz wersję PDF tutaj: Różnica między konstruktorem a niszczycielem
1.tutorialspoint.com. „Obiekt Java i klasy”. Punkt, Dostępny tutaj