Razlika između višestrukog i višeslojnog nasljeđivanja

Ključna razlika - nasljeđivanje višestrukog i višerazinskog
 

Objektno orijentirano programiranje (OOP) paradigma je za dizajn programa pomoću klasa i metoda. Scenariji iz stvarnog svijeta mogu se preslikati na objekte. Stoga je lako graditi softverska rješenja. Klasa je nacrt za izgradnju objekta. Sadrži svojstva i metode. Na primjer, prije stvaranja predmeta učenika trebao bi biti student razreda sa svojstvima i metodama. Student može imati svojstva kao što su id učenika, ime i metode poput čitanja, pisanja, učenja. Metode opisuju ponašanje dok su svojstva atributi. Nakon kreiranja klase moguće je kreirati objekte pomoću njih. Stvaranje objekta poznato je i kao Instanttiation objekta. Objekt ne postoji izolirano. Oni komuniciraju s drugim objektima i podaci se prenose unutar objekata. Jedan stup OOP-a je nasljeđivanje. Svrha nasljeđivanja je povećati ponovnu upotrebu koda. Stvara novu klasu svojstava i metoda već postojeće klase. Postojeća klasa poznata je kao osnovna klasa, a nova klasa se naziva izvedenom klasom. Višestruko nasljeđivanje i višeslojno nasljeđivanje vrste su nasljeđivanja. Ovaj članak govori o razlici između njih. ključna razlika između višeslojnog i višerazinskog nasljeđivanja je to Višestruko nasljeđivanje je kada klasa nasljeđuje od mnogih osnovnih klasa dok je višerazinsko nasljeđivanje kad klasa nasljeđuje izvedenu klasu, čineći tu klasu bazom za novu klasu.

SADRŽAJ

1. Pregled i ključne razlike
2. Što je višestruko nasljeđivanje
3. Što je višeslojno nasljeđivanje
4. Sličnosti između nasljeđivanja višestrukih i višerazinskih
5. Usporedna usporedba - nasljeđivanje višestrukih u odnosu na više razine u tabelarnom obliku
6. Sažetak

Što je višestruko nasljeđivanje?

Višestruko nasljeđivanje je kad klasa nasljeđuje više od jedne osnovne klase.

Slika 01: Višestruko nasljeđivanje

A B i C su klase. A i B su osnovne klase, a C je izvedena klasa. Klasa C mora upravljati ovisnošću obje osnovne klase A i B. Višestruko nasljeđivanje ne koristi se široko u softverskim projektima. To čini sustav složenijim jer jedna klasa nasljeđuje mnoge klase.

Na primjer, pretpostavimo da obje klase A i B imaju metodu istog naziva koja je zbroj (), a klasa C izvede obje klase. Nakon kreiranja objekta tipa C i poziva sum () metoda može uzrokovati pogrešku jer obje klase imaju istu metodu. Kompajler ne zna koju funkciju treba nazvati. Stoga višestruko nasljeđivanje povećava složenost sustava. Višestruko nasljeđivanje podržano je na jeziku C ++, ali jezici kao što je Java, C # ne podržavaju višestruko nasljeđivanje. Umjesto toga, ovi jezici koriste sučelje koje je slično klasi, ali ih nije moguće primjeniti.

Što je višeslojno nasljeđivanje?

Višerazinsko nasljeđivanje jest kada klasa nasljeđuje izvedenu klasu čineći taj izvedeni razred osnovnom klasom za novu klasu.

Slika 02: Nasljeđivanje na više nivoa

Nasljedstvo na više razina ima tri razine. Srednja klasa koju B nasljeđuje iz klase A, a klasa C nasljeđuje iz razreda B. A osnovna klasa za B, a B je osnovna klasa za C.

Program koji provodi Multilevel Inheritance je sljedeći. Program je napisan pomoću Java.

Slika 03: Program koji implementira višeslojno nasljeđivanje

Prema gornjem programu, klasa A je osnovna klasa za klasu B. Klasa B je osnovna klasa za klasu C. Sva svojstva i metode klase A dostupne su razredu B. Sva svojstva i metode klase B dostupne su klasi C. Stoga, klasa C može pristupiti svojstvima i metodama i A i B. Prilikom stvaranja objekta tipa C moguće je pozvati sve tri metode A (), B () i C (). Izlaz će dati A, B, C.

Koja je sličnost nasljeđivanja višestrukih i višerazinskih?

  • Obje su vrste nasljeđivanja.

Koja je razlika između višestrukog i višeslojnog nasljeđivanja?

Višestruko nasljeđivanje nasljeđivanje više razine

Višestruko nasljeđivanje je vrsta nasljeđivanja gdje klasa nasljeđuje više od jedne osnovne klase. Višerazinsko nasljeđivanje je vrsta nasljeđivanja koja nasljeđuje izvedenu klasu, čineći tu izvedenu klasu osnovnom klasom za novu klasu.
 upotreba
Višestruko nasljeđivanje nije široko korišteno jer sustav čini složenijim. Višerazinsko nasljeđivanje široko se koristi.
Razine klase
Višestruko nasljeđivanje ima dvije razine klase, naime osnovnu i izvedenu klasu. Višerazinsko nasljeđivanje ima tri razine klase, naime osnovnu klasu, srednju klasu i izvedenu klasu.

Sažetak - Nasljeđivanje višestrukog u odnosu na više nivoa

Nasljeđivanje je glavni stup objektno orijentiranog programiranja. Postoje različite vrste nasljeđivanja; oni su nasljeđivanje na jednom nivou, nasljeđivanje na više nivoa, višestruko nasljeđivanje, hijerarhijsko nasljeđivanje i hibridno nasljeđivanje. Nasljedstvo na jednoj razini ima jednu osnovnu klasu i jednu izvedenu klasu. Hijerarhijsko nasljeđivanje ima jednu osnovnu klasu i mnoge izvedene klase. Hibridno nasljeđivanje je kombinacija višerazinskog i višestrukog nasljeđivanja. U ovom je članku opisana razlika između višestrukog nasljeđivanja i višerazinskog nasljeđivanja. Razlika između višestrukog i višerazinskog nasljeđivanja je da je višestruko nasljeđivanje kad klasa nasljeđuje od mnogih osnovnih klasa dok je višerazinsko nasljeđivanje kad klasa nasljeđuje izvedenu klasu, čineći tu izvedenu klasu osnovnom klasom za novu klasu. Višerazinsko nasljeđivanje široko se koristi od višestrukog nasljeđivanja.

Preuzmite PDF multiple i nasljeđivanje na više nivoa

Možete preuzeti PDF verziju ovog članka i koristiti je za izvanmrežne svrhe, prema napomeni. Molimo preuzmite PDF verziju ovdje Razlika između višestrukog i višeslojnog nasljeđivanja

Referenca:

1.Singh, Chaitanya i dr. "Vrste nasljeđivanja na Javi: pojedinačno, višestruko, višeslojno i hibridno." Beginnersbook.com, 6. prosinca 2013. Dostupno ovdje
2.tutorialspoint.com. "Nasljeđivanje Java." Točka. Dostupno ovdje 

Ljubaznošću slike:

1. 'Višestruko nasljeđivanje' od Suman Maverick Gangulian Suman420 - Vlastiti rad, (CC BY 3.0) putem Commons Wikimedia 
2. 'Višestruko nasljeđivanje' Autor: Suman Maverick Gangulian Suman420 (razgovor) 12:03, 2. ožujka 2015. (UTC) - Vlastiti rad, (CC BY 3.0) putem Commons Wikimedia