Die meisten Programmiersprachen unterstützen die objektorientierte Programmierung. Es ist eine Methodik, ein Programm oder eine Software mit Objekten zu erstellen. Ein Objekt wird mit einer Klasse erstellt, daher ist es eine Instanz einer Klasse. Eine Klasse liefert die Beschreibung dessen, aus dem das Objekt bestehen sollte. Beim Erstellen von Objekten wird der Speicher für die Objekte zugewiesen. Der zugewiesene Speicher sollte am Ende der Programmausführung veröffentlicht werden, um diesen Speicher für ein anderes Objekt wiederzuverwenden. Programmiersprachen wie Java und C#.Müllkollektoren für Nettoverwendung für Speicherverwaltung, während Sprachen wie C und C ++ den Programmierer erfordern, die Speicherverwaltung zu verarbeiten. Die erforderliche Menge an Speicher sollte zugewiesen werden, und am Ende der Ausführung sollte der Speicher freigegeben werden. Der Müllsammler und der Destruktor werden zur Veröffentlichung des Gedächtnisses verwendet. Der Schlüsselunterschied Zwischen dem Müllsammler und dem Destruktor befindet sich das Ein Müllsammler ist eine Software, die eine automatische Speicherverwaltung durchführt, während ein Destruktor eine spezielle Methode ist, die der Müllsammler während der Zerstörung des Objekts genannt wird.
1. Überblick und wichtiger Unterschied
2. Was ist ein Müllsammler
3. Was ist ein Destruktor
4. Ähnlichkeiten zwischen Müllsammler und Zerstörer
5. Nebenseitiger Vergleich - Müllsammler gegen Destruktor in tabellarischer Form
6. Zusammenfassung
Einige Programmiersprachen haben Code -Umgebungen verwaltet. In Programmiersprachen wird Java und C#automatische Speicherverwaltung durchgeführt. Der Programmierer muss den von den Objekten verwendeten Speicher nicht freilegen. Für sie ist es einfacher, selbst komplexe Systeme zu entwickeln, da die Speicherverwaltung automatisch durchgeführt wird. In Programmiersprachen wie C, C ++ und objektives C sollte das Programm den Speicher der Objekte wieder an das System weitergeben. Sprachen wie Java und C# können die Objekte herausfinden, die nicht mehr verwendet werden. Anschließend geben sie den Speicher frei, der für diese Objekte zurück zum System zugewiesen wurde.
In den Programmiersprachen C# und Java kann bei einer Klasse namens Schüler ein Objekt mit dem Schüler s = neuer Schüler () erstellt werden. Das 'Neue' wird verwendet, um eine Instanz der Schülerklasse zu erstellen. Es weist den Speicher im System zu. Das 's' bezieht sich auf den für dieses Objekt zugewiesenen Speicherblock. Die Sprachumgebungen identifizieren, ob die Objekte verwendet werden oder nicht. Wenn sie nicht weiter verwendet werden, wird der Speicher freigesetzt und kann später verwendet werden.
Abbildung 01: Müllsammler und Zerstörer
Beim Ausführen eines Programms werden die Speicherblöcke aus dem Systemspeicherpool zugewiesen. Dann führt das Programm die Aufgaben mit diesem Speicher aus. Wenn die Programmausführung beendet ist, findet der Müllsammler heraus. Wenn sie nicht erforderlich sind, werden diese Speicherblöcke an das System zurückgegeben. Daher kann der Müllsammler die erstellten Objekte im Programm verfolgen. Die nicht mehr benötigten Speicherblöcke werden an den Systemspeicherpool zurückgesandt. Der Hauptvorteil dieses Prozesses besteht darin, zu bestätigen, dass sich der Programmierer nicht auf die Speicherverkleidung konzentrieren muss. Es gleicht die Leistung und den Speicherverbrauch aus.
Ein Destruktor ist eine besondere Mitgliedsfunktion einer Klasse. Es wird angerufen, wenn das Objekt aus dem Zielfernrohr ausgeht. Das Objekt kann zerstört werden, wenn eine Funktion endet oder am Ende der Programmausführung. Der Destruktor hat den gleichen Namen wie der Klassenname. Der Konstruktor wird verwendet, um das Objekt zu erstellen. Es kann Parameter akzeptieren. Der Konstruktor kann auch Rückgabewerte haben. Aber in einem Destruktor gibt es keinen Rückgabetyp oder Annahme von Parametern. Eine Klasse kann nur aus einem Destruktor bestehen. Ein Destruktor wird unter Verwendung des Tilde -Zeichens bezeichnet. Wenn der Unterrichtsname ein Schüler ist, ist der Destruktor ~ student () .
Der Müllsammler sucht nach Objekten, die nicht mehr benötigt werden. Es stellt sicher, dass die Objekte, die nicht mehr vom Programm verwendet werden, zerstört werden sollten. Es ruft den Destruktor auf, das Gedächtnis freizugeben und die Ressourcen zu bearbeiten. Zerstörer sind nützlich, um Speicher zu veröffentlichen, Dateien zu schließen, Netzwerkressourcen zu veröffentlichen und Datenbankverbindungen zu schließen. In den meisten Programmiersprachen ist es nicht notwendig, den Destruktor zu schreiben, da der Müllsammler den Standardkonstruktor selbst nennt. Wenn der Programmierer eine dynamische Speicherzuweisung unter Verwendung von Zeigern in einer Sprache wie C ++ durchgeführt hat, sollte er einen Destruktor schreiben, um das Gedächtnis zu veröffentlichen, bevor das Objekt zerstört wird.
Garbage Collector gegen Destructor | |
Ein Müllsammler ist eine Software, die eine automatische Speicherverwaltung durchführt. | Ein Destruktor ist eine spezielle Methode, die der Garbage Collector während der Zerstörung des Objekts genannt wird. |
Typ | |
Ein Müllsammler ist eine Software. | Ein Destruktor ist eine Methode. |
Müllsammler und Destruktor sind zwei Begriffe, die mit dem Verlassen des Gedächtnisses verbunden sind. In diesem Artikel wurde der Unterschied zwischen Müllsammler und Destruktor erörtert. Der Unterschied zwischen dem Müllsammler und dem Zerstörer besteht darin, dass ein Müllsammler eine Software ist, die eine automatische Speicherverwaltung ausführt, während ein Destruktor eine spezielle Methode ist, die vom Müllsammler während der Zerstörung des Objekts bezeichnet wird.
Sie können die PDF -Version dieses Artikels herunterladen und sie für Offline -Zwecke gemäß Citation Note verwenden. Bitte laden Sie die PDF -Version hier herunter: Unterschied zwischen Müllsammler und Destruktor
1.Lyndapodcast. „Wie C# Müllsammlung funktioniert | Lynda. Com Tutorial.Wie C# Müllsammlung funktioniert | Lynda.Com Tutorial, LinkedIn Learning Solutions, 19. September. 2011. Hier verfügbar
2.Zerstörer in c .”Geeksforgeeks, 27. Mai 2017. Hier verfügbar
3.Jain, Shubham. „Müllsammler und Zerstörer in C#.”C# Ecke. Hier verfügbar