Objektorientert programmering (OOP) brukes ofte til å utvikle programvare. Mange programmeringsspråk støtter objektorientert programmering. Objektorientert programmering er en metode for å designe et program ved hjelp av klasser og objekter. En klasse i OOP er en tegning for å skape et objekt. En klasse har egenskaper og metoder. Et objekt er en forekomst av en klasse. OOP inneholder fire pilarer som arv, polymorfisme, abstraksjon og innkapsling. Denne artikkelen diskuterer forskjellen mellom polymorfisme og arv i OOP. De nøkkelforskjell mellom polymorfisme og arv i OOP er det Polymorfisme er evnen til et objekt å oppføre seg på flere måter, og arv er å skape en ny klasse ved hjelp av egenskaper og metoder i en eksisterende klasse.
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. Side ved side-sammenligning - Polymorfisme vs arvelighet i OOP i tabellform
6. Sammendrag
Polymorfisme er å indikere flere former. Ett objekt kan ha flere oppføringer. Polymorfisme kan deles inn i to kategorier. De er overbelastende og tvingende.
Se underprogrammet som er skrevet i Java.
Figur 01: Overbelastning
I henhold til det ovennevnte programmet opprettes et objekt av type A. Når du ringer obj.sum (); Det vil gi utgangen relatert til metode sum (). Når du ringer til obj.sum (2,3); Det vil gi utgangen relatert til summen (int a, int b). Det kan observeres at det samme objektet har forskjellige 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 kompilere tidspolymorfisme.
En annen type polymorfisme er overordnet. Se underprogrammet som er skrevet i Java.
Figur 02: Overstyrende
I henhold til det ovennevnte programmet er det en metodevisning () i klasse A. Klasse B strekker seg fra klasse A. Derfor er alle metoder i klasse A tilgjengelige i klasse B. Det er arv. Arvskonceptet er beskrevet senere.
Klasse B har også samme metodevisning (). Når du oppretter et objekt av type A og kalles visningsmetode, vil utgangen gi B. Klasse A-visningsmetode overskrides av klasse B-visningsmetode. Så er utgangen B.
Når det finnes 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 Sen binding, Dynamic Binding, Runtime Polymorphism. Overbelastning og overstyring kalles som polymorfisme. Det er et stort konsept i Objektorientert Programmering.
Se underprogrammet som er skrevet i Java.
Figur 03: Eksempel på arv
I følge det ovennevnte programmet har klasse A metode sum () og klasse B har metode sub ().
Summen () -metoden til klasse A kan brukes i klasse B ved å utvide søkeord. Å gjenbruke egenskapene og metodene i en eksisterende klasse for å opprette en ny klasse kalles arvelighet. Selv det er ingen sum () metode i klasse B; den er arvet fra klasse A. Arvelighet er nyttig for gjenbruk av kode. Den eldre klassen kalles grunnklasse, superklasse eller foreldre klasse. Den avledede klassen kalles underklasse eller barneklasse.
Det finnes ulike typer arv. De er ensartede arv, flernivå arv, flere arv, hierarkisk arv og hybrid arv.
I Enkelt Arv er det en superklasse og en underklasse. Hvis klasse A er superklassen og klasse B er underklassen, er alle egenskaper og metoder for klasse A tilgjengelig i klasse B. Det er bare ett nivå; derfor kalles den som engangs 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 ar arver fra a og c arver fra b, det er en multi-level arvelighet.
I flere arv er det mange superklasser og en underklasse. Hvis det er tre superklasser som heter A, B, C og D er underklassen, så 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.
Hvis det er klasser som heter A som superklasser og B, C er underklasser, kan disse underklassene arve egenskaper og metoder i klasse A. Denne typen arvstype er kjent som hierarkisk arv.
Det er en annen spesiell arvstype som er kjent som hybrid arv. Det er en kombinasjon av flere nivåer 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.
Polymorfisme vs arvelighet i OOP | |
Polymorfisme er en objektets evne til å oppføre seg på flere måter. | Arv er å skape en ny klasse ved hjelp av egenskaper og metoder i en eksisterende klasse. |
bruk | |
Polymorfisme brukes til objekter å kalle hvilken form for metoder på kompileringstid og kjøretid. | Arv brukes til kodenes gjenbrukbarhet. |
Gjennomføring | |
Polymorfisme er implementert i metoder. | Arv er implementert i klasser. |
kategorier | |
Polymorfisme kan deles i overbelastning og overordnet. | Arv kan deles inn på enkeltnivå, multi-nivå, hierarkisk, hybrid og flere arv. |
Polymorfisme og arv er viktige begreper i Objektorientert Programmering. Forskjellen mellom polymorfisme og arv i OOP er at polymorfisme er et felles grensesnitt for flere former og arv er å skape en ny klasse ved hjelp av egenskaper og metoder i en eksisterende klasse. Begge konseptene er mye brukt i Software Development.
Du kan laste ned PDF-versjonen av denne artikkelen og bruke den til off-line formål som per sitatnotat. Vennligst last ned PDF-versjon her Forskjellen mellom polymorfisme og arv i OOP