Die Klasse steht im Zentrum der objektorientierten Programmierung (OOP). Es ist wie ein Plan zum Erstellen von Objekten, der Anfangswerte für Elementvariablen und Elementfunktionen bereitstellt. Es ist der grundlegende Baustein von OOP, der die Natur eines zukünftigen Objekts definiert. Das Wichtigste an einer Klasse ist, dass sie einen neuen Datentyp definiert. Sobald sie definiert ist, können sie zum Erstellen von Objekten dieses Typs verwendet werden. Es genügt also zu sagen, dass eine Klasse eine Vorlage für ein Objekt ist und ein Objekt tatsächlich eine Instanz einer Klasse ist. Es wird zum Erstellen und Verwalten neuer Objekte und zur Unterstützung der Vererbung verwendet. Dies ist eines der Kernkonzepte objektorientierter Programmiersprachen wie Java. Kurz gesagt, eine Klasse organisiert Informationen über einen Datentyp, um Elemente wiederzuverwenden, wenn mehrere Instanzen dieses Datentyps erstellt werden. Die innerhalb einer Klasse definierten Daten oder Variablen werden Instanzvariablen genannt.
Ein Konstruktor ist eine spezielle Memberfunktion einer Klasse, die aufgerufen wird, wenn eine Instanz eines Objekts erstellt wird. Es kann manchmal schwierig sein, bei jeder Instanzerstellung alle Variablen in einer Klasse zu initialisieren. Da die Anforderung an die Initialisierung in der objektorientierten Programmierung üblich ist, können Objekte beim Erstellen automatisch initialisiert werden. Dieser Vorgang der automatischen Initialisierung erfolgt durch Verwendung eines Konstruktors. Der Grund, warum es als special bezeichnet wird, liegt darin, dass die Instanzmethode normalerweise denselben Namen wie die Klasse hat. Es initialisiert ein Objekt sofort nach der Erstellung und kann verwendet werden, um die Werte der Elemente eines Objekts festzulegen. Ein Konstruktor ist einer Methode in der objektorientierten Programmierung syntaktisch ähnlich, und eine Methode ist eine Prozedur, die einer Klasse zugeordnet ist und in einem Objekt dieser Klasse enthalten ist. Kurz gesagt, ein Konstruktor wird jedes Mal aufgerufen, wenn ein Objekt einer Klasse erstellt wird. Das Wichtigste an Konstruktoren ist, dass sie keinen Rückgabetyp haben und nicht einmal ungültig sind.
Ein Destruktor ist ein völlig anderes Konzept. Es ist eine spezielle Methode, die aufgerufen wird, wenn die Instanz einer Klasse aus dem Speicher gelöscht wird. Ein Destruktor wird automatisch aufgerufen, wenn ein Objekt nicht mehr benötigt wird oder verschwinden soll oder explizit freigegeben wird. Der Hauptzweck eines Destruktors besteht darin, die Ressourcen zu entfernen, die das Objekt während seines Lebenszyklus verwendet hat. Es gibt dem Objekt eine letzte Chance, den zugewiesenen Speicher freizugeben, sodass auf dem Heapspeicher genügend Speicherplatz zum Speichern neuer Objekte vorhanden ist, um Programme effizient auszuführen. Destruktoren werden häufig in Verbindung mit Konstruktoren verwendet, mit der Ausnahme, dass sie zum Zerstören von Objekten verwendet werden, die mit Konstruktoren erstellt wurden. Die Idee ist, Objekte zu löschen, wenn sie gelöscht werden, um Speicherplatz für neue Objekte freizugeben. Destruktoren sind wie Konstruktoren in der Klassendefinition als Subroutinen definiert und haben denselben Namen wie der Klassenname, mit der Ausnahme, dass einem Destruktor ein a vorangestellt ist ~ (Tilde) Operator. Destruktoren werden in C ++ explizit aufgerufen, es gibt jedoch keine Destruktoren in Java.
Konstruktoren und Destruktoren sind spezielle Elementfunktionen jeder Klasse, jedoch mit unterschiedlichen Konzepten. Ein Konstruktor wird zum Initialisieren der Instanz einer Klasse verwendet, das heißt, er wird jedes Mal aufgerufen, wenn eine Klasse instanziiert wird, während ein Destruktor das Gegenteil eines Konstruktors ist, der in umgekehrter Reihenfolge der Konstruktoren aufgerufen wird.
Ein Konstruktor wird jedes Mal aufgerufen, wenn eine neue Instanz einer Klasse erstellt wird. Es ist im Grunde eine Member-Funktion einer Klasse, die ein Objekt sofort nach der Erstellung initialisiert und ihm Speicherplatz zuweist. Ein Destruktor wird dagegen aufgerufen, wenn die Instanz einer Klasse aus dem Speicher gelöscht wird, wodurch Objekte, die mithilfe von Konstruktoren erstellt wurden, desitialisiert werden, um Speicher für neue Objekte freizugeben.
Konstruktoren und Destruktoren sind spezielle Elementfunktionen einer Klasse mit demselben Namen wie der Klassenname, mit der Ausnahme, dass einem Destruktor ein ~ (Tilde) -Operator vorangestellt ist. Ein Konstruktor ist nichts anderes als eine Methode, die keinen Rückgabetyp hat, nicht einmal void, während Destruktoren genau das Gegenteil von Konstruktoren sind.
Konstruktoren und Destruktoren werden nach dem Erstellen und Löschen automatisch aufgerufen. Im Gegensatz zu Konstruktoren können Destruktoren jedoch nicht überladen werden. Überladen ist ein objektorientiertes Programmierkonzept, mit dem Sie zwei oder mehr Funktionen mit demselben Namen definieren können, um sie mit verschiedenen Argumentlisten aufzurufen.
In der objektorientierten Programmierung akzeptieren Konstruktoren häufig Argumente, mit denen sie die erforderlichen Member-Variablen festlegen, während Destruktoren keine Argumente akzeptieren.
Konstruktoren ermöglichen es dem Objekt, einen Teil seines Wertes zu initialisieren, bevor es verwendet wird, während Destruktoren es dem Objekt ermöglichen, einen Teil des Codes zu dem Zeitpunkt auszuführen, zu dem es zerstört wird.
Konstruktoren und Destruktoren sind spezielle Elementfunktionen einer Klasse, die denselben Namen wie der Klassenname haben, mit der Ausnahme, dass Destruktoren ein ~ Tilde-Operator vorangestellt wird. Ein Konstruktor ist nichts anderes als eine Methode, es sei denn, er wird aufgerufen, wenn eine Instanz eines Objekts erstellt wird, während ein Destruktor genau das Gegenteil von Konstruktoren ist, die aufgerufen werden, wenn die Instanz eines Objekts aus dem Speicher gelöscht wird. Destruktoren dienen dazu, Objekte, die mithilfe von Konstruktoren erstellt wurden, zu de-initialisieren, um Speicherplatz für neue Objekte freizugeben.