Singel ärft kontra multipel ärft

Författare: Laura McKinney
Skapelsedatum: 4 April 2021
Uppdatera Datum: 14 Maj 2024
Anonim
Singel ärft kontra multipel ärft - Andra
Singel ärft kontra multipel ärft - Andra

Innehåll

Den viktigaste skillnaden mellan enstaka arv och flera arv är att i enstaka arv ärver den härledda klassen endast en enda basklass, medan, i flera arv, den härledda klassen ärver mer än en basklass.


Arv är ett av de viktigaste begreppen i OOP som är objektorienterad programmering. Begreppet återanvändbarhet stöds i arv. Återanvändbarhet innebär att ny klass återanvänder egenskaperna hos den redan befintliga klassen. I arv härledd klass ärva basklassen och åtkomst, bestämmer specifier vilken basklassmedlem som ska ärvas. Det finns typer av arv som är en enda arv, hierarkisk arv, multilevel arv och hybrid arv. Vid enstaka arv ärver den härledda klassen endast en enda basklass, medan, i flera arv, den härledda klassen ärver mer än en basklass.

Det finns bara en enda härledd klass som ärvs från basklassen. Det finns tre sätt att ärva basklassen som är offentlig, skyddad och privat. Access specificer används för att ärva basklassen. Anledningen till enstaka arv är att ärva egenskaperna och beteendet från en ensamstående förälderklass. Det huvudsakliga syftet med objektorienterad programmering, som är återanvändbarhet i koden, uppfylls genom att använda enstaka arv. Om vi ​​pratar enstaka arv i jämförelse med flera arv än, är enstaka arv lättare jämfört med flera arv. Funktionsöverskridande används i enstaka arv. Polymorfism i körtid kallas överväldigande. Överskridande uppnås genom att använda ett funktionellt nyckelord som är virtuellt. Detta nyckelord används i basklassen. När härledd klass omdefinierar en funktion kan inte åsidosatt funktion ändras. Överskridande i C ++ avgör vilken version av funktionen som heter. Enstaka arv används i C ++, Java, PHP, C # och visuell basis.


Flera arv gör det möjligt att erhålla mer än en basklass, det betyder att du kan få egenskaperna för mer än en basklass. Vi kan ha en härledd klass och flera basklasser. Basklassen ärvs genom att nämna den separata åtkomstspecifikationen. Flera arv har symmetrisk sammanslagning och asymmetrisk förlängning. När det finns adaptermönster används flera arv. Flera arv används i C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp, Tcl. Implementeringen av kod för flera arv är komplex jämfört med enstaka arv.

Innehåll: Skillnad mellan enkel arv och multipel ärft

  • Jämförelsediagram
  • Enskild arv
  • Multipel ärft
  • Viktiga skillnader
  • Slutsats
  • Förklarande video

Jämförelsediagram

GrundEnskild arvMultipel ärft
Menande Vid enstaka arv ärver den härledda klassen endast en enda basklass

I flera arv ärver den härledda klassen mer än en basklass.


 

SäkerEnstaka arv är säkrare än flera arvFlera arv är inte säkra att genomföra
TillgångI enstaka arv ärvs funktioner i en enda klassI flera arv kan funktioner i flera klasser ärvas
Körning Enstaka arv kräver mer körtidFlera arv kräver mindre körtid

Enskild arv

Det finns bara en enda härledd klass som ärvs från basklassen. Det finns tre sätt att ärva basklassen som är offentlig, skyddad och privat. Access specificer används för att ärva basklassen. Anledningen till enstaka arv är att ärva egenskaperna och beteendet från en ensamstående förälderklass. Det huvudsakliga syftet med objektorienterad programmering, som är återanvändbarhet i koden, uppfylls genom att använda enstaka arv. Om vi ​​pratar om enstaka arv jämfört med flera arv än, är enstaka arv lättare jämfört med flera arv. Funktionsöverskridande används i enstaka arv. Polymorfism i körtid kallas överväldigande. Överskridande uppnås genom att använda ett funktionellt nyckelord som är virtuellt. Detta sökord används i basklassen. När härledd klass omdefinierar en funktion kan den åsidosatta funktionen inte ändras. Överskridande i C ++ avgör vilken version av funktionen som heter. Enstaka arv används i C ++, Java, PHP, C # och visuell basis.

Multipel ärft

Flera arv gör det möjligt att få mer än en basklass, det betyder att du kan få egenskaperna för mer än en basklass. Vi kan ha en härledd klass och flera basklasser. Basklassen ärvs genom att nämna den separata åtkomstspecifikationen. Flera arv har symmetrisk sammanslagning och asymmetrisk förlängning. När det finns ett adaptermönster används flera arv. Flera arv används i C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp, Tcl. Implementeringen av kod för flera arv är komplex jämfört med enstaka arv.

Viktiga skillnader

  1. Vid enstaka arv ärver den härledda klassen endast en enda basklass, medan, i flera arv, den härledda klassen ärver mer än en basklass.
  2. Enstaka arv är säkrare än flera arv medan flera arv inte är säkra att genomföra.
  3. I enstaka arv ärvs funktioner i en enda klass medan i flera arv kan funktioner i flera klasser ärvas.
  4. Enstaka arv kräver mer körtid medan flera arv kräver mindre körtid

Slutsats

I den här artikeln ovan ser vi den tydliga skillnaden mellan enstaka arv och flera arv med implementeringen

Förklarande video