Video: Forskellen Mellem Arv Og Sammensætning
2024 Forfatter: Mildred Bawerman | [email protected]. Sidst ændret: 2023-12-16 08:37
Arv vs sammensætning
Arv og komposition er to vigtige begreber, der findes i OOP (Object Oriented Programming). Enkelt sagt handler både sammensætning og arv om at give yderligere egenskaber eller adfærd til en klasse. Arv er evnen for en klasse til at arve egenskaber og adfærd fra en overordnet klasse ved at udvide den. På den anden side er komposition en klasses evne til at indeholde objekter af forskellige klasser som medlemsdata.
Hvad er arv?
Som nævnt ovenfor er arv evnen for en klasse til at arve egenskaber og adfærd fra en overordnet klasse ved at udvide den. Arv tilvejebringer i det væsentlige genbrug af kode ved at tillade udvidelse af egenskaber og opførsel af en eksisterende klasse med en nyligt defineret klasse. Hvis klasse A udvider B, kaldes klasse B forældreklassen (eller superklassen), og klasse A kaldes underklassen (eller afledt klasse / underklasse). I dette eksempel scenario arver klasse A alle offentlige og beskyttede attributter og metoder i superklassen (B). Underklassen kan eventuelt tilsidesætte (give ny eller udvidet funktionalitet til metoder) den adfærd, der er arvet fra den overordnede klasse.
Arv repræsenterer et "is-a" forhold i OOP. Dette betyder i det væsentlige, at A også er en B. Med andre ord kan B være klassen med en generel beskrivelse af en bestemt virkelig verdensenhed, men A angiver en bestemt specialisering. I et virkeligt verdensprogrammeringsproblem kunne personklassen udvides til at oprette medarbejderklassen. Dette kaldes specialisering. Men du kan også først oprette medarbejderklassen og derefter generalisere den også til en personklasse (dvs. generalisering). I dette eksempel vil medarbejderen have alle personens egenskaber og adfærd (dvs. medarbejder er også en person) og kan også indeholde nogle yderligere funktioner (så person er ikke en medarbejder).
Hvad er sammensætning?
Komposition er en klasses evne til at indeholde objekter fra forskellige klasser som medlemsdata. For eksempel kunne klasse A indeholde et objekt i klasse B som medlem. Her kan alle de offentlige metoder (eller funktioner), der er defineret i B, udføres inden for klasse A. Klasse A bliver beholderen, mens klasse B bliver den indeholdte klasse. Komposition kaldes også Containership. I dette eksempel kan det siges, at klasse A er sammensat af klasse B. I OOP repræsenterer komposition et”has-a” forhold. Det er vigtigt at bemærke, at selvom containeren har adgang til at udføre alle de offentlige metoder i den indeholdte klasse, er den ikke i stand til at ændre eller give yderligere funktionalitet. Når det kommer til et virkeligt verdensprogrammeringsproblem, kan et objekt i klasse TextBox være indeholdt i klasse Form,og således kan siges, at en formular indeholder en tekstboks (eller alternativt en formular er sammensat af en tekstboks).
Hvad er forskellen mellem arv og sammensætning?
Selv om arv og komposition er to OOP-koncepter, er de ret forskellige i hvad de tillader programmøren at opnå. Arv er en klasses evne til at arve egenskaber og adfærd fra en overordnet klasse ved at udvide den, mens komposition er en klasses evne til at indeholde objekter fra forskellige klasser som medlemsdata. Hvis en klasse udvides, arver den alle de offentlige og beskyttede egenskaber / adfærd, og denne adfærd kan tilsidesættes af underklassen. Men hvis en klasse er indeholdt i en anden, får beholderen ikke evnen til at ændre eller tilføje adfærd til det indeholdte. Arv repræsenterer et "is-a" forhold i OOP, mens komposition repræsenterer et "has-a" forhold.
Anbefalet:
Forskellen Mellem Sammensætning Og Reaktion Støkiometri
Nøgleforskellen mellem sammensætning og reaktionsstøkiometri er, at sammensætning støkiometri henviser til den atomare sammensætning af en kemisk forbindelse, wh
Forskellen Mellem Cytoplasmatisk Arv Og Nuklear Arv
Hovedforskellen mellem cytoplasmatisk arv og nuklear arv er, at cytoplasmatisk arv finder sted fra gener, der er til stede i cytoplasmatisk eller
Forskellen Mellem økologisk Arv Og Landlig Arv
Hovedforskellen mellem økologisk arv og landdistrikterne er, at økologisk arv er en naturlig proces med ændringer, mens arv efter landdistrikterne
Forskellen Mellem Primær Arv Og Sekundær Arv
Primær arv vs sekundær arv Biotiske samfund ændrer sig i henhold til interne faktorer eller eksterne faktorer. Denne proces, som ab
Forskellen Mellem Arv Og Arv
Hovedforskel - Legacy vs Bequest Arv og legat er to juridiske udtryk, der ofte bruges til at diskutere en persons sidste vilje. Begge henviser til en amou