Indholdsfortegnelse:
- Nøgleforskel - Overstyring vs Overbelastning i C #
- Hvad er tilsidesættelse i C #?
- Hvad er overbelastning i C #?
- Hvad er ligheden mellem overstyring og overbelastning i C #?
- Hvad er forskellen mellem overstyring og overbelastning i C #?
- Resumé - Overstyring vs Overbelastning i C #
Video: Forskellen Mellem Overstyring Og Overbelastning I C
2024 Forfatter: Mildred Bawerman | [email protected]. Sidst ændret: 2023-12-16 08:37
Nøgleforskel - Overstyring vs Overbelastning i C #
Hovedforskellen mellem tilsidesættelse og overbelastning i C # er, at binding af tilsidesat metodeopkald til dens definition sker ved kørsel, mens binding af overbelastet metodeopkald til dets definition sker på kompileringstidspunktet.
C # er et generelt programmeringssprog udviklet af Microsoft. Den største fordel ved C # er, at den understøtter Object Oriented Programming (OOP). En søjle i OOP er polymorfisme. Det giver et objekt at have flere adfærd. Der er to typer i polymorfisme kendt som tilsidesættelse og overbelastning. Denne artikel diskuterer forskellen mellem metodeoverstyring og overbelastning i C #.
INDHOLD
1. Oversigt og nøgleforskel
2. Hvad er overstyring i C #
3. Hvad er overbelastning i C #
4. Ligheder mellem overstyring og overbelastning i C #
5. Sammenligning side om side - Overstyring versus overbelastning i C # i tabelform
6. Resumé
Hvad er tilsidesættelse i C #?
Der er hinanden vigtigt begreb i OOP er arv. Det er at bruge attributter og metoder fra den allerede eksisterende klasse. Det forbedrer genanvendelighed af kode. Den allerede eksisterende klasse er basisklassen, og den nye klasse er kendt som den afledte klasse. Ved tilsidesættelse af polymorfisme bør der være en basisklasse og en afledt klasse. Bindingen af det tilsidesatte metodeopkald til definitionen sker ved kørsel. Et eksempel er som følger.
Figur 01: C # -program med tilsidesættelse
I henhold til ovenstående program er klassen Form baseklassen, og den indeholder visningsmetoden. Klasserektangel og trekant er afledte klasser. Disse afledte klasser har også den samme metodevisning med deres egne implementeringer.
For det første oprettes referencevariablen obj. Det peger på Shape-objektet. Så udførelsesmetoden for Shape-klasse udføres. Derefter peger referencevariablen på rektangelobjektet. Så udførelsesmetoden til rektangelklassen udføres. Endelig peger referencevariablen på trekantsobjektet. Så visningsmetoden i trekantsklassen udføres. Basisklassens displaymetode tilsidesættes af displaymetoderne for de afledte klasser.
Metoden til kørsel bestemmes ved kørselstid. Klassen Form er skrevet med et 'virtuelt' nøgleord. Klasserne rektangel og trekant er skrevet med 'tilsidesættelse' nøgleord. Hvis disse nøgleord ikke bruges, vil output udskrive indholdet af visningsmetoden i formklasse for alle.
Hvad er overbelastning i C #?
Ved overbelastning har flere metoder det samme navn, men med forskellige parametre. Parametrene kan være af forskellige typer. Metoderne kan også have et andet antal parametre. Metodeoverbelastning forekommer i samme klasse. Bindingen af overbelastede metoder til definitionen sker på kompileringstidspunktet. Se nedenstående C # -program.
Figur 02: C # -program med overbelastning
I henhold til ovenstående program har klasse A to metoder med samme navn kaldet sum. De har forskellige typer parametre. I hovedprogrammet oprettes et objekt af A. Summen (2,3) påberåber summetoden med heltal. Summen (5.1, 7.94) påberåber summetoden med dobbeltværdier. Begge metoder har samme navn og samme antal parametre. Men parametertyperne er forskellige. Den krævede metode kaldes i overensstemmelse hermed. Overbelastning kan også forekomme, hvis metodens navne og parametertyper er ens, men antallet af parametre er forskelligt.
Hvad er ligheden mellem overstyring og overbelastning i C #?
Både Overstyring og Overbelastning i C # er typer af polymorfisme
Hvad er forskellen mellem overstyring og overbelastning i C #?
Diff artikel midt foran bordet
Overstyring vs Overbelastning i C # |
|
Overstyring i C # er at tilvejebringe en specifik implementering i en afledt klassemetode til en metode, der allerede findes i basisklassen. | Overbelastning i C # er at oprette flere metoder med samme navn med forskellige implementeringer. |
Parametre | |
I C # tilsidesættelse har metoderne det samme navn, de samme parametertyper og det samme antal parametre. | I C # Overbelastning har metoderne det samme navn, men et andet antal parametre eller en anden type parametre. |
Hændelse | |
I C # sker tilsidesættelse inden for basisklassen og den afledte klasse. | I C # forekommer overbelastning inden for samme klasse. |
Bindende tid | |
Bindingen af det tilsidesatte metodeopkald til dets definition sker ved kørsel. | Bindingen af det overbelastede metodekald til dets definition sker på kompileringstidspunktet. |
Synonymer | |
Tilsidesættelse kaldes polymorfisme, dynamisk polymorfisme eller sen binding. | Overbelastning kaldes kompileringstidspolymorfisme, statisk polymorfisme eller tidlig binding. |
Resumé - Overstyring vs Overbelastning i C #
Overstyring og overbelastning er to typer polymorfisme. Forskellen mellem tilsidesættelse og overbelastning i C # er, at bindingen af det tilsidesatte metodeopkald til dets definition sker ved kørsel, mens bindingen af det overbelastede metodeopkald til dets definition sker på kompileringstidspunktet.
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 Overstyring Og Overbelastning
Overstyring vs Overbelastning Metoden Overstyring og metode Overbelastning er to begreber / teknikker / funktion, der findes i nogle programmeringssprog. Begge begiver sig
Forskellen Mellem Overbelastning Og Overstyring I Java
Nøgleforskel - Overbelastning vs Overriding i Java Object-Oriented Programming (OOP) er et stort paradigme inden for softwareudvikling. Det er en metode til
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