Indholdsfortegnelse:
- Nøgleforskel - Constructor vs Destructor
- Hvad er en konstruktør?
- Hvad er en Destructor?
- Hvad er ligheden mellem konstruktør og destruktor?
- Hvad er forskellen mellem konstruktør og destruktor?
- Resumé - Constructor vs Destructor
Video: Forskellen Mellem Konstruktør Og Destruktor
2024 Forfatter: Mildred Bawerman | [email protected]. Sidst ændret: 2023-12-16 08:37
Nøgleforskel - Constructor vs Destructor
De fleste programmeringssprog understøtter Object Oriented Programming (OOP). Det er paradigmet, der hjælper med at modellere en software eller et program ved hjælp af objekter. OOP forbedrer produktiviteten og vedligeholdelsesevnen. I OOP betragtes alt som et objekt. Objekterne oprettes eller instantieres ved hjælp af klasser. Constructor og Destructor er almindelige udtryk i Objektorienteret programmering. Denne artikel diskuterer forskellen mellem en konstruktør og en destruktor. En konstruktør og en destruktør er speciel medlemsfunktion i en klasse. En konstruktør og destruktør har samme navn som klassen, men destruktøren har et tilde (~) tegn. Hovedforskellen mellem en konstruktør og en destruktor er, at en konstruktør bruges til at allokere hukommelse til et objekt, mens en destruktor bruges til at deallocere hukommelsen af et objekt.
INDHOLD
1. Oversigt og nøgleforskel
2. Hvad er en konstruktør
3. Hvad er en destruktør
4. Ligheder mellem konstruktør og destruktor
5. Sammenligning side om side - Konstruktør mod destruktør i tabelform
6. Resumé
Hvad er en konstruktør?
En konstruktør er en speciel medlemsfunktion i klassen til at allokere hukommelse til et objekt. Det kan bruges til at give værdier til datamedlemmerne. Konstruktøren påberåbes, når objektet oprettes. Det har samme navn som klassens navn. En konstruktør returnerer ingen værdi. Derfor indeholder den ikke en returtype. En konstruktør kan også acceptere parametre. En konstruktør med parametre er kendt som en parametreret konstruktør.
Et eksempel på en konstruktør er som følger.
offentlig klasse rektangel {
int længde, bredde;
offentlig rektangel (int p, int q) {
længde = p;
bredde = q;
}
offentlig int-beregningsareal () {
retur (længde * bredde);
}
}
Ifølge ovenstående stykke kode har konstruktøren det samme navn som klassens navn. Konstruktørrektanglet accepterer to parametre. De er p og q. Heltalsværdien p er tildelt længden. Heltalsværdien q tildeles bredden. I calcualteArea beregnes multiplikationen af længde og bredde for at finde arealet af rektanglet. I hovedprogrammet kan programmøren oprette et objekt af typen rektangel og videregive argumenterne. f.eks. rektangel rekt1 = nyt rektangel (2,3). Derefter kaldes den parametriserede konstruktor og tildeler værdierne til længde og bredde.
Figur 01: Konstruktør og ødelægger
Når der er en konstruktør uden parametre, kaldes den en standardkonstruktør. Hvis programmøren ikke definerer en konstruktør, kaldes standardkonstruktøren. Hvis der er en klasse som Student, og når programmøren opretter et objekt af typen Student, kaldes standardkonstruktøren. fx Student s1 = ny Student (); Der kan være flere konstruktører med forskellige parametre og forskellige datatyper i en klasse. Den relevante konstruktør kan kaldes i overensstemmelse hermed. Derfor kan konstruktører overbelastes.
Hvad er en Destructor?
En destruktør er en særlig medlemsfunktion i klassen. Det bruges til at de-allokere hukommelse til et objekt oprettet af konstruktøren. Destruktøren påberåbes, når objektet ødelægges. Det udfører oprydningslager, der ikke længere er påkrævet. Ligesom konstruktøren har destruktøren samme navn som klassen. Den indeholder også et tilde (~) symbol.
En destruktør returnerer ikke nogen værdi. I modsætning til en konstruktør accepterer destruktoren ingen parametre. Så destruktør understøtter ikke overbelastning. At erklære en destruktor betragtes som en god programmeringspraksis, fordi det frigiver hukommelsespladsen, og det plads kan bruges til at gemme nogle andre objekter. Syntaxen for destruktoren svarer til ~ className () {}. f.eks. ~ rektangel () {}; Der kan kun være en enkelt destruktør i en klasse.
Hvad er ligheden mellem konstruktør og destruktor?
- Både konstruktør og destruktor er forbundet med objekter.
- Både konstruktør og destruktor returnerer ingen værdi.
- Både konstruktør og destruktor kaldes automatisk.
Hvad er forskellen mellem konstruktør og destruktor?
Diff artikel midt foran bordet
Constructor vs Destructor |
|
En konstruktør er et specielt medlem i klassen, der bruges til at allokere hukommelse til et objekt. | En destruktør er et specielt medlem af klassen, der bruges til at omfordele hukommelsen af et objekt. |
Fremkaldelsesmetode | |
En konstruktør påberåbes, når objektet oprettes. | En destruktor kaldes, når objektet ødelægges eller slettes. |
Anvendelse | |
En konstruktør bruges til at tildele hukommelse til objekterne. | En destruktør bruges til at deallokere hukommelse til objekterne. |
Parametre | |
En konstruktør accepterer parametre. | En destruktor accepterer ikke parametre. |
Antal konstruktører og destruktorer | |
Der kan være flere konstruktører med et andet antal parametre og forskellige typer parametre. | Der kan være en enkelt destruktør i klassen. |
Udførelseshastighed | |
En konstruktør har samme navn som klassens navn. | En destruktør har samme navn som klassens navn med et tilde (~) symbol. |
Overbelastning | |
En konstruktør kan overbelastes. | En destruktør kan ikke overbelastes. |
Resumé - Constructor vs Destructor
OOP er et fælles paradigme inden for softwareudvikling. Det kan forenkle et komplekst projekt. En konstruktør og en destruktor bruges i OOP. En konstruktør og destruktor har samme navn som klassen, men destruktøren har et ~ tegn. Forskellen mellem en konstruktør og destruktor er, at en konstruktør bruges til at allokere hukommelse til et objekt, mens en destruktor bruges til deallocate-hukommelsen af et objekt.
Download PDF'en af Constructor vs Destructor
Du kan downloade PDF-versionen af denne artikel og bruge den til offlineformål som pr. Citatnote. Download venligst PDF-versionen her: Forskellen mellem konstruktør og destruktor
Anbefalet:
Forskellen Mellem Symmetriske Og Asymmetriske Topmolekyler
Nøgleforskellen mellem symmetriske og asymmetriske topmolekyler er, at symmetriske topmolekyler har en korrekt rotationsakse og to inertimomenter
Forskellen Mellem Transgene Mus Og Knockout-mus
Hovedforskellen mellem transgene mus og knockout-mus er, at transgene mus har fremmede gener indsat i dets genom, mens knockout-mus har en funk
Forskellen Mellem Affaldssamler Og Destruktor
Nøgleforskel - Garbage Collector vs Destructor De fleste programmeringssprog understøtter objektorienteret programmering. Det er en metode til at opbygge et program o
Forskellen Mellem Nøgleforskellen Mellem Metalliske Og Ikke-metalliske Mineraler
Nøgleforskel - Metallisk vs. ikke-metalliske mineraler Et mineral er en naturligt forekommende fast og uorganisk bestanddel med en bestemt kemisk formel og
Forskellen Mellem Gammel Engelsk Og Mellem Engelsk Og Moderne Engelsk
Old English vs Middle English vs Modern English Old English, Middle English og Modern English er klassificeringen af engelsk, og de