Diferența dintre moștenirea unică și moștenirea multiplă

Autor: Laura McKinney
Data Creației: 1 Aprilie 2021
Data Actualizării: 14 Mai 2024
Anonim
Multiple Inheritance in C++ with Ambiguity & Resolution | C++ programming for Beginners
Video: Multiple Inheritance in C++ with Ambiguity & Resolution | C++ programming for Beginners

Conţinut

Diferența principală

Moștenirea unică este definită ca o clasă derivată folosită pentru a moșteni proprietățile și natura lor de la o clasă monoparentală care are toate caracteristicile necesare pentru a fi rulat programul. Moștenirea multiplă este definită ca un tip folosit de limbajele de programare computerizate orientate pe obiecte în care caracteristicile care există în cadrul obiectului sau clasei părinte pot fi transmise noului obiect sau clasei.


Diagramă de comparație

BazăMoștenire unicăMoștenire multiplă
DefinițieO clasă derivată folosită pentru a moșteni proprietățile și natura lor de la o clasă monoparentală care are toate caracteristicile necesare pentru rularea programului.Un tip folosit de limbajele de programare computerizate orientate pe obiecte în care caracteristicile care există în cadrul obiectului sau clasei părinte pot fi transmise noului obiect sau clasei.
BazaClasa derivată capătă baza unică.Clasa derivată primește două sau mai mult de două clase de bază.
AccesClasa derivată accesează întotdeauna caracteristicile fișierului cu care sunt asociate.Clasa derivată primește acces la toate caracteristicile claselor de bază pe care le-a conectat.
NaturăRețele publice, private și protejate.Rețele publice, private și protejate.
ComportamentComportamentul rămâne la fel ca părintele.Comportamentul devine amestec de ambii părinți.

Moștenire unică

Moștenirea unică este definită ca o clasă derivată folosită pentru a moșteni proprietățile și natura lor de la o clasă monoparentală care are toate caracteristicile necesare pentru a fi rulat programul. Ajută la moștenirea proprietăților pentru clasa derivată și natura unei clase de bază, apoi deschide reutilizarea codului și adaugă noi caracteristici sistemului care există. Moștenirea unică împuternicește o clasă dedusă să dobândească proprietăți și conduite dintr-o clasă părinte separată. Permite înțelesul nivelului de a achiziționa proprietățile și comportamentul unei clase de bază, abilitând ulterior reutilizarea codului și adăugând suplimentar noi componente la sistemul curent. Acesta face ca sistemul să fie semnificativ mai productiv și mai puțin redundant. Moștenirea este unul dintre elementele cheie ale programării organizate la protest (OOP). Moștenirea unică este mai sigură decât multe moșteniri dacă este atrasă în mod corect. În plus, autorizează o clasă determinată să apeleze la utilizarea clasei părinte pentru o anumită strategie dacă această tehnică este abrogată în clasa inferioară sau constructorul clasei părinte. În momentul în care o clasă amplifică un alt nivel exact în acel moment, o numim moștenire solitară. Diagrama fluxului de mai jos demonstrează că clasa B extinde doar un singur tip care este A. Aici va fi o clasă părinte de B și B ar fi o clasă tyke de A. Ideea de moștenire este utilizată ca parte a multor dialecte de programare, inclusiv C ++, Java, PHP, C # și Visual Basic. Java și C # împuternicesc moștenirea unică, în timp ce dialectele diferite ca C ++ susțin multe moșteniri.


Moștenire multiplă

Moștenirea multiplă este definită ca o clasă folosită de limbajele de programare computerizate orientate pe obiecte primare, în care caracteristicile care există în cadrul obiectului sau clasei părinte pot fi transmise noului obiect sau clasei, iar procesul de moștenire se completează cu noi funcții adăugate. Moștenirea multiplă este o componentă a unor dialecte de programare pentru PC situate în protest în care o întrebare sau o clasă poate dobândi atribute și elemente de la mai mult de un protest părinte sau o clasă părinte. Este inconfundabil de la moștenirea unică, unde o clasă de protestatar poate primi doar de la o întrebare sau o clasă specifică. Elementul de moștenire diferit al unor proteste a aranjat dialecte de programare în care o clasă sau un subiect primește atribute și proprietăți de la mai mult de o clasă părinte sau protest. Este în opoziție cu proprietatea moștenire unică, care permite unei demonstrații sau clase să dobândească dintr-o anumită întrebare sau o clasă. Chiar dacă există anumite avantaje legate de moștenirea multiplă, aceasta crește incertitudinea și natura polivalentă atunci când nu este conturată sau executată în mod corespunzător. Moștenirea diferită a execuției este capacitatea de a dobândi definiții tehnice din diverse clase. Problemele apar cu acest tip de moștenire numeroasă, de exemplu, ciocniri de nume și echivocitate. De asemenea, un inginer software poate prezenta în mod involuntar o luptă pentru nume, adăugând o altă tehnică la o superclasă. Strategiile implicite arată un tip de moștenire diferită. O clasă poate actualiza mai mult de o interfață, care poate conține politici implicite care au un nume similar. Compilatorul Java oferă câteva principii pentru a descoperi ce sistem implicit are o clasă distinctă.


Diferențele cheie

  1. Moștenirea unică este definită ca o clasă derivată folosită pentru a moșteni proprietățile și natura lor de la o clasă monoparentală care are toate caracteristicile necesare pentru a fi rulat programul. Moștenirea multiplă este definită ca un tip folosit de limbajele de programare computerizate orientate pe obiecte în care caracteristicile care există în cadrul obiectului sau clasei părinte pot fi transmise noului obiect sau clasei.
  2. Clasa derivată primește clasa de bază unică atunci când vine vorba de moștenire unică. Pe de altă parte, clasa derivată primește două sau mai mult de două clase de bază.
  3. Clasa derivată pentru o moștenire unică accesează întotdeauna caracteristicile fișierului cu care sunt asociate. Pe de altă parte, clasa derivată pentru moștenire multiplă primește acces la toate caracteristicile claselor de bază pe care le-a conectat.
  4. Atât moștenirea unică, cât și cea multiplă au același factor de vizibilitate și, prin urmare, au rețele publice, private și protejate.
  5. Timpul de execuție pentru un singur proces de moștenire necesită timp redus pentru a finaliza diferite sarcini aeriene. Pe de altă parte, timpul de rulare pentru un proces de moștenire multiplă are nevoie de mai mult timp pentru a termina diverse procese.
  6. Comportamentul pentru o moștenire unică rămâne același ca părintele. În timp ce, comportamentul moștenirii multiple devine un amestec de ambii părinți.

Principala diferență între oraș și uburbie ete că Orașul ete o așezare care ete mai mare decât un at, dar mai mică decât un oraș și uburbia ete o zonă rezidențială au mixtă, exitentă ca...

Fofat Un fofat ete un derivat chimic al acidului foforic. Ionul fofat (PO3 -4) ete un produ chimic anorganic, baza conjugată care poate forma multe ăruri diferite. În chimia organică, un fofat ...

Articole Din Portal.