Hva er de fire forskjellige typer Arv forholdet?

Hva er de fire forskjellige typer Arv forholdet?


I C ++ programmering, er en klasse en datastruktur som definerer et sett med egenskaper som kan inkludere både data og funksjoner. Arv gjør det mulig for en type klasse, kalt avledet klasse, for å ha noen eller alle av dens egenskaper som er definert av en annen klasse, kalt basisklassen. Det finnes fire hovedtyper av arv forhold i C ++: enkeltrom, flere, hierarkiske og multilevel, selv om disse kan kombineres til en femte type som heter hybrid arv.

enkelt~~POS=TRUNC Arv

Enkelt arv er den enkleste formen for arv struktur mellom C ++ klasser. I en enkelt arv hierarki, arver en avledet klasse egenskaper fra en base klasse. Dette er en enkel forhold der den avledede klassen representerer et delsett av baseklassen. Et eksempel på hvor enkelt arv kan brukes er med en base klasse kalt Book, holder en bok tittel, sjanger, etc. En avledet klasse kunne eksistere kalt LibraryBook, som ville bli definert som en bok med den ekstra tilhører en forfallsdato.

multippel arv

Multippel arv er en noe mer avansert type arv som en avledet klasse stammer egenskaper fra to eller flere basisklassene. For eksempel kan klasse kalt Person defineres til å holde en persons navn, fødselsdato, etc., og en annen klasse kalt Employee kan defineres til å holde en arbeidstakers lønn, arbeidsgiver, fordeler pakke, etc. En avledet klasse kalt webdesigner kan tegne egenskapene fra både person og ansatte grunnklasser til å lagre både biografisk og sysselsetting informasjon om web-designere.

hierarkisk Arv

Hierarkisk arv er det motsatte av multippel arv. I stedet for en avledet klasse tegning på flere grunnklasser, gir en base klasse egenskaper for flere avledet klasser. Et eksempel på hvor hierarkisk arv kan brukes er en idrett statistikk sporing program. En base klasse kalt Player kan lagre en spillers navn, alder, team, etc. Avledet klasser kalt BaseballPitcher, BaseballShortstop, FootballLineman, etc. kan alle utlede de grunnleggende egenskapene til en spiller fra base klassen og hver legge til et annet sett av egenskaper for å spore statistikken er relevante for at idrett og posisjon.

Multilevel level~~POS=HEADCOMP Arv

Multilevel arv, som navnet antyder, består av en arv hierarki som oppstår når en klasse arver egenskaper fra en annen klasse som er i seg selv en avledet klasse fra en tredje klasse. For eksempel kan en base klasse kalt Book har egenskaper som lagrer tittel, utgiver, etc. av en bok. En avledet klasse LibraryBook kunne utlede egenskaper fra Book samtidig legge nye egenskaper som forfallsdato. En ChildrensSection klasse i sin tur kunne utlede egenskaper fra LibraryBook samtidig legge egenskaper som er spesifikke for en bok fra barneavdeling, som illustratør.