Forskel mellem flere og flere niveauer arv

Nøgleforskel - Multiple vs Multilevel Arv
 

Objektorienteret programmering (OOP) er et paradigme til at designe et program ved hjælp af klasser og metoder. Scenarier i den virkelige verden kan kortlægges til objekter. Derfor er det nemt at opbygge softwareløsninger. En klasse er en plan for at opbygge et objekt. Det indeholder egenskaber og metoder. For eksempel skal der være en klassestudent med egenskaber og metoder, før du opretter et elevobjekt. En studerende kan have egenskaber som student-id, navn og metoder såsom læse, skrive, studere. Metoder beskriver adfærden, mens egenskaber er attributterne. Efter oprettelsen af ​​klassen er det muligt at oprette objekter ved hjælp af dem. Objektoprettelse kaldes også Object Instantiation. Objekt findes ikke isoleret. De kommunikerer med andre objekter, og data sendes inden i objekter. En søjle i OOP er arv. Formålet med arv er at øge genanvendelighed af kode. Det opretter en ny klasse af egenskaber og metoder i den allerede eksisterende klasse. Den eksisterende klasse kaldes baseklassen, og den nye klasse kaldes den afledte klasse. Multiple arv og arvelige flerniveauer er arvstyper. Denne artikel diskuterer forskellen mellem dem. Det vigtigste forskel mellem arv mellem flere og flere niveauer er det Multiple arv er, når en klasse arver fra mange baseklasser, mens multilevel arv er, når en klasse arver fra en afledt klasse, hvilket gør den afledte klasse til en baseklasse for en ny klasse.

INDHOLD

1. Oversigt og nøgleforskel
2. Hvad er multipel arv
3. Hvad er multilevel arv
4. Ligheder mellem flere og flere niveauer arv
5. Sammenligning side ved side - Multiple vs multilevel arv i tabelform
6. Resume

Hvad er flere arv?

Multiple arv er, når en klasse arver mere end en baseklasse.

Figur 01: Multiple arv

A B og C er klasser. A og B er baseklasser, og C er den afledte klasse. Klasse C skal styre afhængigheden af ​​både baseklasser A og B. Flere arv bruges ikke i vid udstrækning i softwareprojekter. Det gør systemet mere kompliceret, fordi en klasse arver mange klasser.

Antag f.eks. At klasse A og B begge har en metode med samme navn, som er summen (), og klasse C stammer fra begge klasser. Efter oprettelse af et objekt af type C og opkaldssummetode () kan det forårsage en fejl, fordi begge klasser har den samme metode. Compileren ved ikke, hvilken funktion den skal ringe til. Derfor øger multipel arv kompleksiteten af ​​et system. Multiple arv understøttes på C ++ sprog, men sprog som Java, C # understøtter ikke multipel arv. I stedet bruger disse sprog grænseflade, der ligner en klasse, men ikke kan blive instantieret.

Hvad er multilevel arv?

Multilevel Arv er, når en klasse arver fra en afledt klasse, hvilket gør den afledte klasse til en baseklasse for en ny klasse.

Figur 02: Flere niveauer arv

Multilevel arv har tre niveauer. Den mellemklasse, som B arver fra klasse A, og klasse C arver fra klasse B. A er baseklassen for B, og B er baseklassen for C.

Et program, der implementerer Multilevel Inheritance, er som følger. Programmet er skrevet ved hjælp af Java.

Figur 03: Program, der implementerer flerfarvet arv

I henhold til ovenstående program er klasse A baseklassen for klasse B. Klasse B er baseklassen for klasse C. Alle egenskaber og metoder i klasse A er tilgængelige for klasse B. Alle egenskaber og metoder til klasse B er tilgængelige efter klasse C. Derfor kan klasse C få adgang til egenskaber og metoder for både A og B. Når der oprettes et objekt af type C, er det muligt at kalde alle tre metode A (), B () og C (). Outputet giver A, B, C.

Hvad er ligheden mellem flere og flere niveauer arv?

  • Begge er arvstyper.

Hvad er forskellen mellem flere og flere niveauer arv?

Multiple arv vs multilevel arv

Multiple arv er en arv type, hvor en klasse arver fra mere end en baseklasse. Multilevel Inheritance er en arv type, der arver fra en afledt klasse, hvilket gør den afledte klasse til en baseklasse for en ny klasse.
 Anvendelse
Multiple arv bruges ikke i vid udstrækning, fordi det gør systemet mere komplekst. Multilevel Arv er vidt brugt.
Klasse Niveauer
Multiple arv har to klassetrin, nemlig baseklasse og afledt klasse. Multilevel Arv har tre klassetrin, nemlig baseklasse, mellemklasse og afledt klasse.

Resumé - Multiple vs multilevel arv

Arv er en vigtig søjle i objektorienteret programmering. Der er forskellige typer arv; de er arvelighed på et enkelt niveau, flerfarvet arv, flere arv, hierarkisk arv og hybrid arv. Det indre niveau arv har en baseklasse og en afledt klasse. Hierarkisk arv har en baseklasse og mange afledte klasser. Hybridarv er en kombination af multilevel og multipel arv. Denne artikel beskrev forskellen mellem Multiple Inheritance og Multilevel Inheritance. Forskellen mellem arv fra flere og flere niveauer er, at flere arv er, når en klasse arver fra mange baseklasser, mens multilevel arv er, når en klasse arver fra en afledt klasse, hvilket gør den afledte klasse til en baseklasse for en ny klasse. Multilevel Arv er vidt brugt end Multiple Arv.

Download PDF Multiple vs Multilevel Inheritance

Du kan downloade PDF-version af denne artikel og bruge den til offline-formål som pr. Citatnotat. Download PDF-version her Forskel mellem flere og flere niveauer arv

Reference:

1.Singh, Chaitanya, et al. “Arvstyper i Java: Enkelt, flere, flere niveauer og hybrid.” Beginnersbook.com, 6. december 2013. Findes her
2.tutorialspoint.com. “Java-arv.” Pointen. Tilgængelig her 

Billede høflighed:

1.'Multiple Inheritance'By Suman Maverick Gangulian Suman420 - Eget arbejde, (CC BY 3.0) via Commons Wikimedia 
2.'Multilevel Inheritance'By Forfatter: Suman Maverick Gangulian Suman420 (tale) 12:03, 2 marts 2015 (UTC) - Eget arbejde, (CC BY 3.0) via Commons Wikimedia