Razlika med enojnim dedovanjem in večkratnim dedovanjem

Avtor: Laura McKinney
Datum Ustvarjanja: 1 April 2021
Datum Posodobitve: 1 Julij. 2024
Anonim
Single Inheritance | Multiple | Types | OOPs in C++ | Lec-27 | Bhanu Priya
Video.: Single Inheritance | Multiple | Types | OOPs in C++ | Lec-27 | Bhanu Priya

Vsebina

Glavna razlika

Single Inheritance se definira kot izpeljani razred, ki se uporablja za podedovanje lastnosti in njihove narave iz enega nadrejenega razreda, ki ima vse funkcije, potrebne za zagon programa. Multiple Inheritance se definira kot vrsta, ki jo uporabljajo glavni objektno usmerjeni računalniški programski jeziki, kjer se lahko lastnosti, ki obstajajo znotraj nadrejenega predmeta ali razreda, prenesejo v nov objekt ali razred.


Primerjalna tabela

OsnoveEnkratna dednostVečkratna dednost
OpredelitevIzvedeni razred, ki se uporablja za podedovanje lastnosti in njihove narave iz enega nadrejenega razreda, ki ima vse funkcije, potrebne za zagon programa.Vrsta, ki jo uporabljajo glavni objektno usmerjeni računalniški programski jeziki, kjer se lahko lastnosti, ki obstajajo znotraj nadrejenega predmeta ali razreda, prenesejo v nov objekt ali razred.
PodnožjeIzvedeni razred dobi eno samo osnovo.Izvedeni razred dobi dva ali več kot dva osnovna razreda.
DostopIzvedeni razred vedno dostopa do funkcij datoteke, s katero se povezujejo.Izvedeni razred dobi dostop do vseh funkcij osnovnih razredov, ki jih je povezal.
NaravaJavna, zasebna in zaščitena omrežja.Javna, zasebna in zaščitena omrežja.
ObnašanjeObnašanje ostaja enako kot starševsko.Obnašanje postane mešanica obeh staršev.

Enkratna dednost

Single Inheritance se definira kot izpeljani razred, ki se uporablja za podedovanje lastnosti in njihove narave iz enega nadrejenega razreda, ki ima vse funkcije, potrebne za zagon programa. Pomaga pri dedovanju lastnosti izpeljanega razreda in narave osnovnega razreda, nato pa odpre ponovno uporabo kode in doda nove funkcije v sistem, ki obstaja. Single Inheritance omogoča sklepnemu razredu, da pridobi lastnosti in ravnanje iz ločenega matičnega razreda. Omogoča razumljivo raven za nakup lastnosti in obnašanja osnovnega razreda, nato pa omogoči ponovno uporabo kode in dodatno doda nove komponente v trenutni sistem. Sistem naredi bistveno bolj produktiven in manj odveč. Dedovanje je eden ključnih elementov protestno urejenega programiranja (OOP). Posamezno dedovanje je varnejše od številnih zapuščin, če ga približamo na pravilen način. Poleg tega omogoča določenemu razredu, da pokliče uporabo nadrejenega razreda za določeno strategijo, če se ta tehnika razveljavi v sklepnem razredu ali konstruktorju nadrejenega razreda. V trenutku, ko razred okrepi drugo stopnjo točno na tej točki, mu rečemo samotna zapuščina. Spodnja graf pretoka kaže, da se razred B širi samo za eno vrsto, to je A. Tukaj bo A nadrejeni razred B in B bi bil tip tikov A. Ideja o dedovanju je uporabljena kot del številnih programskih dialekt, vključno z C ++, Java, PHP, C # in Visual Basic. Java in C # omogočata enojno dedovanje, medtem ko različna narečja, kot je C ++, podpirajo številne dediščine.


Večkratna dednost

Večkratno dedovanje se definira kot razred, ki ga uporabljajo primarni objektno usmerjeni računalniški programski jeziki, kjer se lastnosti, ki obstajajo znotraj nadrejenega predmeta ali razreda, lahko prenesejo na nov objekt ali razred, postopek dedovanja pa se dopolni z novimi dodanimi funkcijami. Večkratno dedovanje je sestavni del programskega narečja, ki se nahaja na PC-ju, v katerem lahko vprašanje ali razred pridobi atribute in elemente iz več kot enega nadrejenega protesta ali nadrejenega razreda. Brez enotnega dedovanja je to nemogoče, kadar lahko protestniški razred dobi le iz enega posebnega vprašanja ali razreda. Različni elementi dediščine nekaterih protestno urejenih programskih narečjev, v katerih razred ali subjekt prejme atribute in lastnosti več kot enega matičnega razreda ali protesta. To je v nasprotju z enotno lastnino dedovanja, ki demonstraciji ali razredu omogoča pridobitev iz enega določenega vprašanja ali razreda. Čeprav obstajajo nekatere prednosti, povezane z večkratnim dedovanjem, povečuje negotovost in večplastnost, kadar ni začrtana ali izvedena na ustrezen način. Različno dedovanje izvedbe je zmožnost pridobivanja definicij tehnike iz različnih razredov. Težave se pojavljajo s tovrstnimi številnimi dedovanji, na primer spopadi z imeni in dvosmernost. Prav tako lahko programski inženir nevede predstavi boj za ime z dodajanjem druge tehnike v nadstandard. Privzete strategije prikazujejo eno vrsto drugačne zapuščine uporabe. Razred lahko aktivira več kot en vmesnik, ki lahko vsebuje privzete pravilnike s podobnim imenom. Java prevajalnik ponuja nekaj načel, s katerimi lahko ugotovimo, kateri sistem privzeto uporablja ločen razred.


Ključne razlike

  1. Single Inheritance se definira kot izpeljani razred, ki se uporablja za podedovanje lastnosti in njihove narave iz enega nadrejenega razreda, ki ima vse funkcije, potrebne za zagon programa. Multiple Inheritance se definira kot vrsta, ki jo uporabljajo glavni objektno usmerjeni računalniški programski jeziki, kjer se lahko lastnosti, ki obstajajo znotraj nadrejenega predmeta ali razreda, prenesejo v nov objekt ali razred.
  2. Izvedeni razred dobi enotni osnovni razred, ko gre za eno samo dedovanje. Po drugi strani izpeljani razred dobi dva ali več kot dva osnovna razreda.
  3. Izvedeni razred za eno samo dedovanje vedno dostopa do funkcij datoteke, s katero se pridružijo. Po drugi strani izpeljani razred za večkratno dedovanje dobi dostop do vseh funkcij osnovnih razredov, ki jih je povezal.
  4. Eno in večkratno dedovanje imata isti faktor vidnosti in zato imata javna, zasebna in zaščitena omrežja.
  5. Čas izvajanja enega samega postopka dedovanja zahteva malo časa za dokončanje različnih nalog. Po drugi strani pa za dokončanje različnih procesov potrebuje več časa za postopek večkratnega dedovanja.
  6. Obnašanje za eno samo dedovanje ostaja enako kot nadrejeno. Medtem ko vedenje večkratnega dedovanja postane mešanica obeh staršev.

Razlika med GPL in LGPL

Monica Porter

Julij. 2024

GPL pomeni plošno javno licenco. LGPL je kot premenjena različica GPL. e pravi manjše plošno javno dovoljenje. Omejuje vašo zahtevo, da navedete nekaj voje kode, vendar bote še vedno morali razkriti p...

Razlika med AAC in Ogg Vorbis

Monica Porter

Julij. 2024

Napredni zvočni kodek (aka AAC) in Ogg Vorbi ta vaka izguba kompreijkih kodekov za digitalni zvok. Vendar e razlikujejo po licenci in združljivoti. Jajčni vorbi je med ljudmi še dodatno všeč, kar je p...

Več Podrobnosti