Introduktion til polymorfisme

Polymorfisme er begrebet ved hjælp af hvilken enkelt handling på forskellige måder kan udføres. Det stammer fra to græske ord, dvs. poly og morfer. "Poly" betyder mange og "morfer" betyder former. Herefter indebærer polymorfisme mange former. I objektorienteret programmering kan det defineres som et programmeringssprogs evne til at behandle objekter forskelligt afhængigt af enten deres klasse eller deres datatype. Grundlæggende kan vi definere det som evnen til afledte klasser til at omdefinere metoder.

forståelse

De to typer polymorfisme er polymorfisme i kompileringstid og polymorfisme af kørselstid. Kompileringstid-polymorfisme udføres ved metodeoverbelastning og runtime-polymorfisme ved metodeoverskridelse. Runtime-polymorfisme, også kaldet Dynamic Method Dispatch, er en proces, hvor opkald til en overstyret metode løses ved kørsel på trods af kompileringstidspunktet. Heri kaldes den overstyrede metode gennem en referencevariabel i en overordnet klasse. Datamedlemmer kan heller ikke opnå Runtime-polymorfisme.

Hvordan gør polymorfisme at arbejde så let?

Det er en objektorienteret programmeringskarakteristik. Ved hjælp af polymorfisme kan en klasse udvise forskellige funktionaliteter, selv når de har en fælles grænseflade. Således kan vi sige, at denne lang sigt forklarer et grundlæggende koncept. Det bemærkelsesværdige ved polymorfisme er, at al arbejdskode i forskellige klasser ikke kræver at vide om den klasse, der bruges af den, da der er den samme måde at bruge på.

Det er en objektorienteret programmeringskarakteristik. Ved hjælp af polymorfisme kan en klasse udvise forskellige funktionaliteter, selv når de har en fælles grænseflade. Således kan vi sige, at denne lang sigt forklarer et meget grundlæggende koncept. Det bemærkelsesværdige ved polymorfisme er, at al arbejdskode i forskellige klasser ikke kræver at vide om den klasse, der bruges af den, da der er den samme måde at bruge på.

Overvej et ægte scenarie for polymorfisme. Tag et eksempel på en knap. Vi ved, at ved at anvende et vist tryk, kan vi klikke på knappen, men vi kender ikke resultatet af at trykke på knappen eller henvisningen til dens anvendelse. Pointen her at bemærke er, uanset om, resultatet ville ikke påvirke den måde, det bruges på.

Så det grundlæggende mål med polymorfisme er at fremstille genstande, der kan udskiftes afhængigt af behovene.

Hvad kan du gøre med polymorfisme?

Når barneklasse har den samme metode som den, der er erklæret i forældreklassen, kalder vi det en metode, der tilsidesætter.

Eller med andre ord, hvis en barneklasse leverer implementeringen af ​​den metode, der er erklæret af sin overordnede klasse, kaldes den metodeoverskridende. Nogle ting at huske ved metodeoverskridelse er:

  • Metoden skal have det samme navn som det, der er nævnt i forældreklassen
  • Metoden skal også have den samme parameter som den, der er nævnt i forældreklassen.
  • Der skal være arven, det vil sige IS-A-forholdet.

Arbejder du med polymorfisme?

Når en klasse har flere metoder, der har samme navn, men forskellige parametre, kaldes det metodeoverbelastning.

Antag, at vi kun skal udføre en operation, så hvis vi har det samme navn som metoderne, ville det øge programmets læsbarhed. Måder at overbelaste metoden i Java er:

  • Ændring af antallet af argumenter
  • Ændring af datatype

I Java er det dog ikke muligt, hvis vi kun ændrer metodens returtype.

Fordele

  • Polymorphism hjælper programmerere med at genbruge koden og også de klasser, der engang er skrevet til test og implementering. (Genanvendelse af kode)
  • Et enkelt variabelnavn kan gemme variabler af flere datatyper (int, float, dobbelt, lang osv.).
  • Øger programmets læsbarhed.

Hvorfor skal vi bruge polymorfisme?

Bortset fra dynamisk polymorfisme og statisk polymorfisme, er der nogle Java-programmeringsegenskaber, der udviser polymorfisme, bortset fra de to hovedtyper.

Disse er - tvang, polymorfe parametre og overbelastning af operatører

tvang

Lad os forstå tvang med et meget simpelt eksempel. Overvej en streng med værdien "tvangsklasse:". Overvej et andet heltal med værdi 1. Hvad sker der nu, når du sammenlægger en strengværdi med en heltalværdi? Outputet fra denne sammenkædning ville være "tvangsklasse: 1". Dette er hvad der kaldes tvang. Den implicitte typekonvertering udføres for at forhindre typefejl. Det gøres af kompilatoren.

Overbelastning af operatøren

Før vi begynder med operatørens overbelastning, også kendt som metodeoverbelastning, lad os gennemgå et eksempel. Overvej en streng med værdien "Operator" og en anden streng som "Overloading". Brug plussymbolet (+) med disse to strenge, ligesom du tilføjer to heltal. (+) Sammenkæder disse to strenge. I tilfælde af to heltal returneres summen af ​​to heltal. Når et symbol eller en operatør har evnen til at ændre deres betydning afhængigt af den måde, de bruges på, kaldes typen af ​​polymorfisme, der vises, Operator Overloading.

Parametre

I polymorfisme kan et objekt optræde i mange former. I Java refererer det til at give adgang til et objekt på en af ​​følgende måder som:

1. ved hjælp af referencevariablen for dets overordnede klasse eller superklasse

2. ved hjælp af referencevariablen for den klasse, hvor den findes.

Hvorfor har vi brug for polymorfisme?

Hovedårsagen til, at polymorfisme er nødvendig, er, at dette koncept er vidt brugt til at implementere arv. Det spiller en vigtig rolle i at tillade objekter at have forskellige interne strukturer ved at dele den samme eksterne interface. Polymorfisme angives klart som en, der er kortlagt for mange.

Anvendelsesområde

Binding forbinder et metodekald til metodekroppen. Vi har to typer bindinger.

Statisk binding (tidlig binding): Når typen af ​​objekt bestemmes på kompileringstidspunktet.

Dynamisk binding (senbinding): Når objekttypen bestemmes ved kørsel.

Konklusion

Polymorfisme betragtes således som en af ​​de meget vigtige træk ved den objektorienterede programmering. Hvis du taler om et ægte eksempel på polymorfisme, kan det være en person på samme tid kan have forskellige karakteristika, for eksempel er en mand på samme tid en søn, en mand, en medarbejder. Så den samme person får forskellige opførsler i forskellige situationer. Dette, objektorienteret, kaldes polymorfisme, en vigtig egenskab ved objektorienteret programmering.

Anbefalede artikler

Dette har været en guide til Hvad er polymorfisme ?. Her diskuterede vi polymorfismens arbejde, rækkevidde, behov og fordele. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -

  1. Hvad er JavaScript?
  2. Hvad er HTML
  3. Hvad er Python
  4. Polymorfisme i C #
  5. Arrays i Java-programmering
  6. Skriv konvertering i Java med typer og eksempler
  7. Vejledning til konvertering i Java med eksempler
  8. Statisk binding og dynamisk binding | Introduktion | Anvendelser

Kategori: