Posamezno dedovanje proti večkratnemu dedovanju
Vsebina
- Vsebina: Razlika med enojnim dedovanjem in večkratnim dedovanjem
- Primerjalna tabela
- Enkratna dednost
- Večkratna dednost
- Ključne razlike
- Zaključek
- Pojasnjevalni video
Ključna razlika med enojnim in večkratnim dedovanjem je v tem, da pri enojnem dedovanju izpeljani razred podeduje le en sam osnovni razred, medtem ko pri večkratnih dedovanjih izpeljani razred podeduje več kot en osnovni razred.
Dedovanje je eden najpomembnejših konceptov OOP, ki je objektno usmerjeno programiranje. Koncept ponovne uporabnosti je podprt pri dedovanju. Ponovna uporabnost pomeni, da nov razred ponovno uporabi lastnosti že obstoječega razreda. V razredu, ki izhaja iz dedovanja, podeduje osnovni razred in dostop, določilec določi, kateri član osnovnega razreda bo podedovan. Obstajajo vrste dedovanja, ki so enotno dedovanje, hierarhično dedovanje, večstopenjsko dedovanje in hibridno dedovanje. Pri enojnem dedovanju izpeljani razred podeduje samo en osnovni razred, medtem ko pri večkratnih dedovanjih izpeljani razred podeduje več kot en osnovni razred.
Obstaja samo en izpeljani razred, ki je podedovan od osnovnega razreda. Obstajajo trije načini za dedovanje osnovnega razreda, ki je javni, zaščiten in zaseben. Specifikator dostopa se uporablja za podedovanje osnovnega razreda. Razlog za enojno dedovanje je v tem, da lastnosti in vedenje podedujejo iz enega starševskega razreda. Glavni namen objektno usmerjenega programiranja, ki je ponovna uporaba kode, je dosežen z enotnim dedovanjem. Če govorimo o enotnem dedovanju v primerjavi z večkratnim dedovanjem, pa mora biti enotno dedovanje lažje v primerjavi z večkratnim dedovanjem. Prevladovanje funkcije se uporablja pri enojnem dedovanju. Polimorfizem med izvajanjem je znan kot prevladujoč. Prevlado dosežemo z uporabo funkcijske ključne besede, ki je virtualna. Ta ključna beseda se uporablja v osnovnem razredu. Ko izpeljani razred na novo definira funkcijo, prepisane funkcije ni mogoče spremeniti. Preglasitev v C ++ določa, katero različico funkcije imenujemo. Enotno dedovanje se uporablja v C ++, Java, PHP, C # in vizualni podlagi.
Večkratno dedovanje omogoča pridobitev več kot enega osnovnega razreda, kar pomeni, da lahko dobite lastnosti več kot enega osnovnega razreda. Lahko imamo en izpeljani razred in več osnovnih razredov. Osnovni razred se podeduje z omenjanjem ločenega specifičnega dostopa. Večkratno dedovanje ima simetrično združevanje in asimetrično razširitev. Če obstaja vzorec adapterja, se uporabi več dedovanja. Večkratno dedovanje se uporablja v C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp, Tcl. Izvajanje kode za več dedovanja je zapleteno v primerjavi z enojnim dedovanjem.
Vsebina: Razlika med enojnim dedovanjem in večkratnim dedovanjem
- Primerjalna tabela
- Enkratna dednost
- Večkratna dednost
- Ključne razlike
- Zaključek
- Pojasnjevalni video
Primerjalna tabela
Osnove | Enkratna dednost | Večkratna dednost |
Pomen | Pri enojnem dedovanju izpeljani razred podeduje samo en sam osnovni razred | Pri več dedovanjih izpeljani razred podeduje več kot en osnovni razred.
|
Varno | Enotno dedovanje je varnejše od večkratnih dedovanj | Več dedovanja ni varno izvajati |
Dostop | Pri enojnem dedovanju se dedujejo lastnosti posameznega razreda | Pri večkratnem dedovanju je mogoče podedovati lastnosti več razredov |
Čas izvajanja | Enotno dedovanje zahteva več časa teka | Večkratno dedovanje zahteva manj časa teka |
Enkratna dednost
Obstaja samo en izpeljani razred, ki je podedovan od osnovnega razreda. Obstajajo trije načini za dedovanje osnovnega razreda, ki je javni, zaščiten in zaseben. Specifikator dostopa se uporablja za podedovanje osnovnega razreda. Razlog za enojno dedovanje je v tem, da lastnosti in vedenje podedujejo iz enega starševskega razreda. Glavni namen objektno usmerjenega programiranja, ki je ponovna uporaba kode, je dosežen z enotnim dedovanjem. Če govorimo o enotnem dedovanju v primerjavi z več dedovanji, mora biti enotno dedovanje lažje v primerjavi z več dedovanji. Prevladovanje funkcije se uporablja pri enojnem dedovanju. Polimorfizem med izvajanjem je znan kot prevladujoč. Prevlado dosežemo z uporabo funkcijske ključne besede, ki je virtualna. Ta ključna beseda se uporablja v osnovnem razredu. Ko izpeljani razred na novo definira funkcijo, prepisane funkcije ni mogoče spremeniti. Preglasitev v C ++ določa, katero različico funkcije imenujemo. Enotno dedovanje se uporablja v C ++, Java, PHP, C # in vizualni podlagi.
Večkratna dednost
Več dedovanja omogočajo izpeljavo več kot enega osnovnega razreda, kar pomeni, da lahko dobite lastnosti več kot enega osnovnega razreda. Lahko imamo en izpeljani razred in več osnovnih razredov. Osnovni razred se podeduje z navedbo ločenega specifičnega dostopa. Več nasledov ima simetrično združevanje in asimetrično razširitev. Če obstaja vzorec adapterja, se uporabi več dedovanj. V C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp, Tcl se uporabljajo več dedovanja. Izvajanje kode za več dedovanja je zapleteno v primerjavi z enojnim dedovanjem.
Ključne razlike
- Pri enojnem dedovanju izpeljani razred podeduje samo en osnovni razred, medtem ko pri večkratnih dedovanjih izpeljani razred podeduje več kot en osnovni razred.
- Enotno dedovanje je varnejše kot več dedovanja, medtem ko več dedovanja ni varno izvajati.
- Pri enojnem dedovanju se dedujejo značilnosti posameznega razreda, medtem ko je pri večkratnem dedovanju mogoče podedovati lastnosti več razredov.
- Enotno dedovanje zahteva več časa izvajanja, medtem ko večkratno dedovanje zahteva manj časa
Zaključek
V tem zgornjem članku vidimo jasno razliko med enojnim in večkratnim dedovanjem z izvajanjem