Belangrijkste verschil - Constructor versus Destructor
De meeste programmeertalen ondersteunen Object Oriented Programming (OOP). Het is het paradigma dat helpt bij het modelleren van software of een programma met behulp van objecten. OOP verbetert de productiviteit en onderhoudbaarheid. In OOP wordt alles als een object beschouwd. De objecten worden gemaakt of geïnstantieerd met behulp van klassen. Constructor en Destructor zijn veelgebruikte termen in Object Oriented Programming. Dit artikel bespreekt het verschil tussen een constructor en een destructor. Een constructor en een destructor zijn een speciale lidfunctie in een klasse. Een constructor en destructor hebben dezelfde naam als de klasse, maar de destructor heeft een tilde (~) teken. Het belangrijkste verschil tussen een constructor en een destructor is dat een constructor wordt gebruikt om geheugen aan een object toe te wijzen, terwijl een destructor wordt gebruikt om het geheugen van een object ongedaan te maken.
INHOUD
1. Overzicht en belangrijkste verschil
2. Wat is een constructor
3. Wat is een destructor
4. Overeenkomsten tussen constructor en destructor
5. Vergelijking zij aan zij - Constructor versus Destructor in tabelvorm
6. Samenvatting
Wat is een constructeur?
Een constructor is een speciale lidfunctie in de klasse om geheugen aan een object toe te wijzen. Het kan worden gebruikt om waarden voor de gegevensleden op te geven. De constructor wordt aangeroepen wanneer het object wordt gemaakt. Het heeft dezelfde naam als de klassenaam. Een constructor retourneert geen enkele waarde. Daarom bevat het geen retourtype. Een constructor kan ook parameters accepteren. Een constructor met parameters staat bekend als een constructor met parameters.
Een voorbeeld van een constructor is als volgt.
openbare klasse Rechthoek {
int lengte, breedte;
openbare rechthoek (int p, int q) {
lengte = p;
breedte = q;
}
openbare int berekenArea () {
terugkeer (lengte * breedte);
}
}
Volgens het bovenstaande stuk code heeft de constructor dezelfde naam als de klassenaam. De constructor Rectangle accepteert twee parameters. Ze zijn p en q. De gehele waarde p wordt toegewezen aan de lengte. De integerwaarde q wordt toegewezen aan de breedte. In de calcualteArea wordt de vermenigvuldiging van lengte en breedte berekend om de oppervlakte van de rechthoek te vinden. In het hoofdprogramma kan de programmeur een object van het type Rectangle maken en de argumenten doorgeven. bijv. Rechthoek rechthoek1 = nieuwe rechthoek (2,3). Vervolgens wordt de geparametriseerde constructor aangeroepen en worden de waarden toegewezen aan de lengte en breedte.
Figuur 01: Constructor en Destructor
Als er een constructor is zonder parameters, wordt deze een standaardconstructor genoemd. Als de programmeur geen constructor definieert, wordt de standaardconstructor aangeroepen. Als er een klasse is als Student en als de programmeur een object van het type Student maakt, wordt de standaardconstructor aangeroepen. bijv. Student s1 = nieuwe student (); Er kunnen meerdere constructors met verschillende parameters en verschillende gegevenstypen in een klasse zijn. De juiste constructor kan dienovereenkomstig worden aangeroepen. Daarom kunnen constructeurs worden overbelast.
Wat is een vernietiger?
Een destructor is een speciale lidfunctie in de klas. Het wordt gebruikt om geheugen vrij te maken voor een object dat door de constructor is gemaakt. De destructor wordt aangeroepen wanneer het object wordt vernietigd. Het voert de opruimopslag uit die niet langer nodig is. Net als de constructor heeft de destructor dezelfde naam als de klasse. Het bevat ook een tilde (~) symbool.
Een destructor levert geen waarde op. In tegenstelling tot een constructor accepteert de destructor geen parameters. Destructor ondersteunt dus geen overbelasting. Het declareren van een destructor wordt beschouwd als een goede programmeerpraktijk omdat het geheugenruimte vrijmaakt en die ruimte kan worden gebruikt voor het opslaan van enkele andere objecten. De syntaxis van destructor is vergelijkbaar met ~ className () {}. bijv. ~ Rectangle () {}; Er kan maar één destructor in een klas zijn.
Wat zijn de overeenkomsten tussen Constructor en Destructor?
- Zowel constructor als destructor zijn geassocieerd met objecten.
- Zowel constructor als destructor retourneren geen waarde.
- Zowel constructor als destructor worden automatisch aangeroepen.
Wat is het verschil tussen Constructor en Destructor?
Diff Artikel Midden voor Tafel
Constructor versus Destructor |
|
Een constructor is een speciaal lid in de klasse dat wordt gebruikt om geheugen aan een object toe te wijzen. | Een destructor is een speciaal lid van de klasse die wordt gebruikt om de toewijzing van geheugen van een object ongedaan te maken. |
Methode van aanroepen | |
Er wordt een constructor aangeroepen wanneer het object wordt gemaakt. | Een destructor wordt aangeroepen wanneer het object wordt vernietigd of verwijderd. |
Gebruik | |
Een constructor wordt gebruikt om geheugen voor de objecten toe te wijzen. | Een destructor wordt gebruikt om geheugen vrij te maken voor de objecten. |
Parameters | |
Een constructor accepteert parameters. | Een destructor accepteert geen parameters. |
Aantal constructeurs en vernietigers | |
Er kunnen meerdere constructors zijn met een verschillend aantal parameters en verschillende soorten parameters. | Er kan een enkele vernietiger in de klas zijn. |
Uitvoeringssnelheid | |
Een constructor heeft dezelfde naam als de klassenaam. | Een destructor heeft dezelfde naam als de klassenaam met een tilde (~) symbool. |
Overbelasting | |
Een constructor kan worden overbelast. | Een destructor kan niet worden overbelast. |
Samenvatting - Constructor vs Destructor
OOP is een veelgebruikt paradigma in softwareontwikkeling. Het kan een complex project vereenvoudigen. Een constructor en een destructor worden gebruikt in OOP. Een constructor en destructor hebben dezelfde naam als de klasse, maar de destructor heeft een ~ -teken. Het verschil tussen een constructor en een destructor is dat een constructor wordt gebruikt om geheugen aan een object toe te wijzen, terwijl een destructor wordt gebruikt om het geheugen van een object ongedaan te maken.
Download de pdf van Constructor vs Destructor
U kunt de pdf-versie van dit artikel downloaden en offline gebruiken volgens de citatienota. Download de pdf-versie hier: Verschil tussen Constructor en Destructor