Peamine erinevus - mitmekordne vs mitmetasandiline pärand
Objektorienteeritud programmeerimine (OOP) on paradigma programmi kujundamiseks klasside ja meetodite abil. Reaalses maailmas stsenaariume saab objektidega kaardistada. Seetõttu on tarkvaralahendusi lihtne üles ehitada. Klass on objekti ehitamise plaan. See sisaldab omadusi ja meetodeid. Näiteks enne õpilase objekti loomist peaks olema klassi õpilane, kellel on omadused ja meetodid. Õpilasel võivad olla sellised omadused nagu õpilase ID, nimi ja meetodid, näiteks lugeda, kirjutada, õppida. Meetodid kirjeldavad käitumist, atribuudid on omadused. Pärast klassi loomist on võimalik nende abil objekte luua. Objektide loomine on tuntud ka kui Objekti esmajärgutamine. Objekti ei eksisteeri eraldi. Nad suhtlevad teiste objektidega ja objektides edastatakse andmeid. Üks OOP sammas on pärimine. Pärimise eesmärk on suurendada koodi korduvkasutatavust. See loob juba olemasoleva klassi uue omaduste ja meetodite klassi. Olemasolevat klassi tuntakse kui baasklassi ja uut klassi nimetatakse tuletatud klassiks. Mitmekordne pärimine ja mitmetasandiline pärimine on päranditüübid. Selles artiklis käsitletakse nende erinevust. Peamine erinevus mitmekordse ja mitmetasandilise pärandi vahel on see, et mitmekordne pärand on see, kui klass pärib paljudelt baasklassidelt, samal ajal kui mitmetasandiline pärand on see, kui klass pärib tuletatud klassist, tehes sellest tuletatud klassist uue klassi baasklassi. Mitmekordne pärimine ja mitmetasandiline pärimine on päranditüübid. Selles artiklis käsitletakse nende erinevust. Peamine erinevus mitmekordse ja mitmetasandilise pärandi vahel on see, et mitmekordne pärand on see, kui klass pärib paljudelt baasklassidelt, samal ajal kui mitmetasandiline pärand on see, kui klass pärib tuletatud klassist, tehes sellest tuletatud klassist uue klassi baasklassi. Mitmekordne pärimine ja mitmetasandiline pärimine on päranditüübid. Selles artiklis käsitletakse nende erinevust. Peamine erinevus mitmekordse ja mitmetasandilise pärandi vahel on see, et mitmekordne pärand on see, kui klass pärib paljudelt baasklassidelt, samal ajal kui mitmetasandiline pärand on see, kui klass pärib tuletatud klassist, tehes sellest tuletatud klassist uue klassi baasklassi.
SISU
1. Ülevaade ja peamine erinevus
2. Mis on mitmekordne pärand
3. Mis on mitmetasandiline pärimine
4. Mitme- ja mitmetasandilise pärandi sarnasused
5. Kõrvuti võrdlus - mitmekordne või mitmetasandiline pärand tabelina
6. Kokkuvõte
Mis on mitmekordne pärand?
Mitmekordne pärand on see, kui klass pärib rohkem kui ühe baasklassi.
Joonis 01: mitmekordne pärand
AB ja C on klassid. A ja B on põhiklassid ja C on tuletatud klass. Klass C peab haldama mõlema baasklassi A ja B sõltuvust. Mitut pärandit ei kasutata tarkvaraprojektides laialdaselt. See muudab süsteemi keerukamaks, kuna üks klass pärib paljusid klasse.
Oletame näiteks, et klassidel A ja B on mõlemal sama nimega meetod (summa) () ja klass C tuletab mõlemad klassid. Pärast C-tüüpi objekti loomist ja summa () meetodi kutsumist võib see põhjustada tõrke, kuna mõlemal klassil on sama meetod. Kompilaator ei tea, millist funktsiooni kutsuda. Seetõttu suurendab mitmekordne pärimine süsteemi keerukust. Mitut pärandit toetatakse C ++ keeles, kuid sellised keeled nagu Java, C # ei toeta mitut pärandit. Selle asemel kasutavad need keeled liidest, mis sarnaneb klassiga, kuid mida ei saa instantsida.
Mis on mitmetasandiline pärimine?
Mitmetasandiline pärand on see, kui klass pärib tuletatud klassist, tehes sellest tuletatud klassist uue klassi baasklassi.
Joonis 02: Mitmetasandiline pärand
Mitmetasandilisel pärimisel on kolm taset. Vaheklass, mille B pärib klassist A ja klass C pärineb klassist B. A on B ja B on B klass.
Mitmetasandilist pärandit rakendav programm on järgmine. Programm on kirjutatud Java abil.
Joonis 03: programm, mis rakendab mitmetasandilist pärandit
Vastavalt ülaltoodud programmile on klass B klassi B klass. Klass B on klassi C põhiklass. B klassile pääseb ligi kõigile A klassi omadustele ja meetoditele. Kõigile B klassi omadustele ja meetoditele on juurdepääs klasside kaupa C. Seetõttu on klassil C juurdepääs nii A kui ka B omadustele ja meetoditele. Tüüpi C objekti loomisel on võimalik kutsuda kõiki kolme meetodit A (), B () ja C (). Väljund annab A, B, C.
Milline on mitmekordse ja mitmetasandilise pärandi sarnasus?
Mõlemad on pärilikkuse tüübid
Mis on mitmekordse ja mitmetasandilise pärandi erinevus?
Erinev artikkel keskel enne tabelit
Mitmekordne pärand vs mitmetasandiline pärand |
|
Mitmekordne pärand on päranditüüp, kus klass pärib rohkem kui ühest põhiklassist. | Mitmetasandiline pärand on päranditüüp, mis pärib tuletatud klassist, tehes sellest tuletatud klassist uue klassi baasklassi. |
Kasutamine | |
Mitmekordset pärimist ei kasutata laialdaselt, kuna see muudab süsteemi keerukamaks. | Mitmetasandiline pärand on laialt levinud. |
Klasside tasemed | |
Mitmekordsel pärimisel on kaks klassitaset, nimelt baasklass ja tuletatud klass. | Mitmetasandilisel päril on kolm klassitaset, nimelt baasklass, vaheklass ja tuletatud klass. |
Kokkuvõte - mitmekordne vs mitmetasandiline pärand
Pärimine on objektile suunatud programmeerimise põhisammas. Pärandit on erinevaid; need on ühetasandiline pärand, mitmetasandiline pärand, mitmekordne pärand, hierarhiline pärand ja hübriidne pärand. Ühetasandilisel pärandil on üks baasklass ja üks tuletatud klass. Hierarhilisel pärimisel on üks baasklass ja palju tuletatud klasse. Hübriidne pärand on kombinatsioon mitmetasandilisest ja mitmekordsest pärandist. Selles artiklis kirjeldati mitmekordse pärimise ja mitmetasandilise pärandi erinevust. Mitmekordse ja mitmetasandilise pärandi erinevus seisneb selles, et mitmekordne pärand on see, kui klass pärandub paljudest baasklassidest, samal ajal kui mitmetasandiline pärand on see, kui klass pärib tuletatud klassist, muutes selle tuletatud klassi uue klassi baasklassi. Mitmetasandiline pärand on laialt kasutatav kui mitmekordne pärand.
Laadige alla PDF-fail Mitu vs mitmetasandiline pärand
Selle artikli PDF-versiooni saate alla laadida ja kasutada võrguühenduseta eesmärkidel, nagu tsiteeritud. Laadige siit alla PDF-versioon. Mitmekordse ja mitmetasandilise pärandi erinevus