Indholdsfortegnelse:
Definition - Hvad betyder arv?
Arv, i C #, er evnen til at oprette en klasse, der arver attributter og adfærd fra en eksisterende klasse. Den nyoprettede klasse er den afledte (eller underordnede) klasse, og den eksisterende klasse er basen (eller overordnet) klassen.
Arv er en af nøglefunktionerne i objektorienteret programmering. Fordelene ved arv er en del af grunden til, at strukturel programmering kan erstattes med objektorienteret programmering.
Arv i C # er designet både til implementering og på interfaceniveau. Implementeringsarv involverer kode fra en klasse, der genbruges i en anden, mens interfacearv indebærer arv fra kun underskrifter af funktioner fra en type til en anden.
Arv er også kendt som generalisering.
Techopedia forklarer arv
C # understøtter ikke flere arv, hvilket betyder, at en klasse kun kan stamme fra en baseklasse, selvom en klasse kan afledes fra en eller flere grænseflader. På grund af arvets transitive karakter arver en afledt klasse alle medlemmer af dens forfædre.
For eksempel kan klasser, bil og bus afledes fra en baseklasse, køretøj, gennem arv, fordi både bil og bus er typer af køretøjer.
De vigtigste træk ved arv inkluderer:
- Alle medlemmer af baseklassen undtagen dem med privat tilgængelighed kan fås i den afledte klasse.
- Alle medlemmer af baseklassen er arvet fra baseklassen undtagen konstruktører og destruktører.
- I modsætning til i C ++ skal de virtuelle metoder i en afledt klasse bruge modifikatoren "tilsidesætte" for at tilsidesætte et arvet medlem.
- For at skjule et arvet medlem med samme navn og underskrift i den afledte klasse, kan den "nye" modifikator bruges.
- For at forhindre direkte instantiering af en klasse kan den "abstrakte" modifikator bruges.
- For at forhindre yderligere afledning af en baseklasse kan den erklæres ved hjælp af "forseglet" modifikator.
- Det muliggør konstruktion af et hierarki af relaterede klasser, der kan genbruge, udvide og ændre den adfærd, der er defineret i de eksisterende klasser.
- Det tillader genanvendelse af kode, hvilket reducerer tid og kræfter i kodning og test.
- Det hjælper med at forbedre modulariteten og ydeevnen ved at dele store kodestykker i mindre, mere håndterbare stykker.
- Det danner midlerne til at opnå polymorfisme, der tillader et objekt at repræsentere mere end en type.
Denne definition blev skrevet i forbindelse med C #