Forskjellen Mellom Polymorfisme Og Arv I OOP

Innholdsfortegnelse:

Forskjellen Mellom Polymorfisme Og Arv I OOP
Forskjellen Mellom Polymorfisme Og Arv I OOP

Video: Forskjellen Mellom Polymorfisme Og Arv I OOP

Video: Forskjellen Mellom Polymorfisme Og Arv I OOP
Video: Jasmine Masters - AND I OOP - Piano Cover 2024, November
Anonim

Nøkkelforskjell - Polymorfisme vs arv i OOP

Objektorientert programmering (OOP) brukes ofte til å utvikle programvare. Mange programmeringsspråk støtter objektorientert programmering. Objektorientert programmering er en metodikk for å designe et program ved bruk av klasser og objekter. En klasse i OOP er en tegning for å lage et objekt. En klasse har egenskaper og metoder. Et objekt er en forekomst av en klasse. OOP inneholder fire søyler som arv, polymorfisme, abstraksjon og innkapsling. Denne artikkelen diskuterer forskjellen mellom polymorfisme og arv i OOP. Hovedforskjellen mellom polymorfisme og arv i OOP er at polymorfisme er et objekts evne til å oppføre seg på flere måter, og arv er å skape en ny klasse ved hjelp av egenskaper og metoder for en eksisterende klasse.

INNHOLD

1. Oversikt og nøkkelforskjell

2. Hva er polymorfisme i OOP

3. Hva er arv i OOP

4. Likheter mellom polymorfisme og arv i OOP

5. Sammenligning side om side - Polymorfisme vs arv i OOP i tabellform

6. Sammendrag

Hva er polymorfisme i OOP?

Polymorfisme er å indikere flere former. Ett objekt kan ha flere atferd. Polymorfisme kan deles inn i to kategorier. De overbelaster og overstyrer.

Overbelastning

Se programmet nedenfor skrevet på Java.

Forskjellen mellom polymorfisme og arv i OOP
Forskjellen mellom polymorfisme og arv i OOP

Figur 01: Overbelastning

I henhold til programmet ovenfor opprettes et objekt av type A. Når du ringer til obj.sum (); det vil gi utdata relatert til metodesummen (). Når du ringer til obj.sum (2,3); det vil gi utdata relatert til sum (int a, int b). Det kan observeres at det samme objektet har ulik oppførsel avhengig av situasjonen. Når det er flere metoder med samme navn, men med forskjellige parametere, er det kjent som overbelastning. Det er også kjent som statisk binding eller kompileringstidspolymorfisme.

Overstyring

En annen type polymorfisme er overordnet. Se programmet nedenfor skrevet på Java.

Forskjellen mellom polymorfisme og arv i OOP Figur 02
Forskjellen mellom polymorfisme og arv i OOP Figur 02

Figur 02: Overstyring

I følge det ovennevnte programmet er det en metodevisning () i klasse A. Klasse B strekker seg fra klasse A. Derfor er alle metodene i klasse A tilgjengelige i klasse B. Det er arv. Arvekonseptet blir beskrevet nærmere senere.

Klasse B har også samme metodevisning (). Når du lager et objekt av type A og anropsvisningsmetode, vil utdataene gi B. Klasse A-visningsmetode overstyres av visningsmetode for klasse B. Så produksjonen er B.

Når det er metoder med samme navn og samme parametere, men i to forskjellige klasser, og de er knyttet til arv, er det kjent som overordnet. Det er også kjent som Late binding, Dynamic Binding, Runtime Polymorphism. Overbelastning og overstyring kalles polymorfisme. Det er et hovedkonsept innen objektorientert programmering.

Hva er arv i OOP?

Se programmet nedenfor skrevet på Java.

Hovedforskjell mellom polymorfisme og arv i OOP
Hovedforskjell mellom polymorfisme og arv i OOP

Figur 03: Eksempel på arv

I henhold til det ovennevnte programmet har klasse A metodesum () og klasse B har metode sub ().

Sum () -metoden i klasse A kan brukes i klasse B ved å bruke utvide nøkkelord. Å gjenbruke egenskapene og metodene i en eksisterende klasse for å opprette en ny klasse er kjent som Arv. Selv er det ingen sum () metode i klasse B; det arves fra klasse A. Arv er nyttig for gjenbrukbarhet av koden. Den eldre klassen kalles basisklassen, superklassen eller foreldreklassen. Den avledede klassen kalles underklassen eller barneklassen.

Typer arv

Det er forskjellige typer arv. De er enkeltnivåarv, flernivåarv, flere arv, hierarkiske arv og hybrid arv.

Enkeltarv

I Single Arv er det en superklasse og en underklasse. Hvis klasse A er superklassen og klasse B er underklassen, er alle egenskapene og metodene i klasse A tilgjengelige i klasse B. Det er bare ett nivå; derfor kalles det som arv på ett nivå.

Flernivåarv

I flernivåarv er det tre nivåer av klasser. Mellomklassen arver fra superklasse. Underklassen arver fra mellomklassen. Hvis det er tre klasser som A, B og C og A er superklassen og B er mellomklassen. Deretter arver B fra A og C arver fra B, det er en multi-level arv.

Flere arv

I Multiple Arv er det mange superklasser og en underklasse. Hvis det er tre superklasser kalt A, B, C og D er underklassen, kan klasse D arve fra A, B og C. Flere arv støttes i programmeringsspråket C ++. Den støttes ikke i programmeringsspråk som Java eller C #. Grensesnitt brukes til å implementere flere arv på disse språkene.

Hierarkisk arv

Hvis det er klasser som kalles A som superklasser og B, C er underklasser, kan disse underklassene arve egenskaper og metoder i klasse A. Den typen arvetype er kjent som Hierarkisk arv.

Hybrid arv

Det er en annen spesiell arvetype som er kjent som hybrid arv. Det er en kombinasjon av flernivå og flere arv. Hvis A, B, C og D er klasser og B arver fra A og D arver fra både B og C, så er det en hybrid arv.

Hva er likhetene mellom polymorfisme og arv i OOP?

Begge er begreper for objektorientert programmering

Hva er forskjellen mellom polymorfisme og arv i OOP?

Diff Article Midt før tabell

Polymorfisme vs arv i OOP

Polymorfisme er en objekts evne til å oppføre seg på flere måter. Arv er å lage en ny klasse ved hjelp av egenskaper og metoder for en eksisterende klasse.
Bruk
Polymorfisme brukes til gjenstander å kalle hvilken form for metoder ved kompilering av tid og kjøretid. Arv brukes til gjenbrukbarhet av koden.
Gjennomføring
Polymorfisme er implementert i metoder. Arv implementeres i klasser.
Kategorier
Polymorfisme kan deles i overbelastning og overstyring. Arv kan deles inn i enkeltnivå, flernivå, hierarkisk, hybrid og flere arv.

Sammendrag - Polymorfisme vs arv i OOP

Polymorfisme og arv er viktige begreper i objektorientert programmering. Forskjellen mellom polymorfisme og arv i OOP er at polymorfisme er et vanlig grensesnitt til flere former, og arv er å skape en ny klasse ved hjelp av egenskaper og metoder for en eksisterende klasse. Begge konseptene er mye brukt i programvareutvikling.

Last ned PDF Polymorphism vs Arv i OOP

Du kan laste ned PDF-versjonen av denne artikkelen og bruke den til frakoblede formål som angitt i en henvisning. Last ned PDF-versjon her Forskjellen mellom polymorfisme og arv i OOP

Anbefalt: