Úvod do polymorfizmu

Polymorfizmus je koncept, pomocou ktorého je možné vykonávať jednotlivé kroky rôznymi spôsobmi. Je odvodený z dvoch gréckych slov, tj poly a morfov. „Poly“ znamená veľa a „morfy“ znamenajú formy. Polymorfizmus odteraz zahŕňa mnoho foriem. V objektovo orientovanom programovaní sa dá definovať ako schopnosť programovacieho jazyka spracovať objekty rôzne v závislosti od ich triedy alebo typu údajov. V zásade ju môžeme definovať ako schopnosť odvodených tried predefinovať metódy.

porozumenie

Dva typy polymorfizmu sú polymorfizmus kompilácie a polymorfizmus behom času. Polymorfizmus v čase kompilácie sa vykonáva preťažením metódy a polymorfizmus runtime pomocou metódy overriding. Runtime polymorfizmus, ktorý sa tiež nazýva Dynamic Method Dispatch, je proces, v ktorom je výzva na prepísanú metódu vyriešená za behu aj napriek kompilácii. Prepísaná metóda sa tu volá prostredníctvom referenčnej premennej nadradenej triedy. Runtime polymorfizmus sa nedá dosiahnuť ani dátovými členmi.

Ako uľahčuje polymorfizmus prácu?

Je to objektovo orientovaná programovacia charakteristika. Pomocou polymorfizmu môže trieda vykazovať rôzne funkcie, aj keď majú spoločné rozhranie. Môžeme teda povedať, že toto dlhodobé vysvetlenie vysvetľuje základný koncept. Pozoruhodné je, že o polymorfizme je, že všetok pracovný kód v rôznych triedach nemusí vedieť o triede, ktorú používa, pretože tam je rovnaký spôsob použitia.

Je to objektovo orientovaná programovacia charakteristika. Pomocou polymorfizmu môže trieda vykazovať rôzne funkcie, aj keď majú spoločné rozhranie. Môžeme teda povedať, že toto dlhodobé vysvetlenie vysvetľuje veľmi základný koncept. Pozoruhodné je, že o polymorfizme je, že všetok pracovný kód v rôznych triedach nemusí vedieť o triede, ktorú používa, pretože tam je rovnaký spôsob použitia.

Zoberme si scenár polymorfizmu v reálnom svete. Urobte príklad tlačidla. Vieme, že pri určitom tlaku môžeme kliknúť na tlačidlo, ale nevieme, aký je výsledok stlačenia tlačidla, ani odkaz na jeho použitie. Bod, ktorý treba poznamenať, je v každom prípade výsledok, ktorý by nemal vplyv na spôsob, akým sa používa.

Základným cieľom polymorfizmu je teda vytvoriť objekty, ktoré sú zameniteľné v závislosti od potrieb.

Čo môžete robiť s polymorfizmom?

Ak má podradená trieda rovnakú metódu ako tá, ktorá bola deklarovaná v nadradenej triede, označujeme ju za prvoradú.

Alebo inými slovami, ak podradená trieda poskytuje implementáciu metódy, ktorá bola vyhlásená jej nadradenou triedou, nazýva sa to prepísanie metódy. Určité veci, ktoré si treba zapamätať pri prevažovaní metód, sú:

  • Metóda musí mať rovnaký názov, aký je uvedený v nadradenej triede
  • Metóda musí mať rovnaký parameter ako parameter uvedený v nadradenej triede.
  • Musí existovať dedičstvo, to znamená vzťah IS-A.

Pracujete s polymorfizmom?

Ak má trieda viacero metód, ktoré majú rovnaký názov, ale odlišné parametre, označuje sa ako preťaženie metód.

Predpokladajme, že musíme vykonať iba jednu operáciu a potom mať rovnaké meno ako metódy by zvýšilo čitateľnosť programu. Spôsoby preťaženia metódy v Java sú:

  • Zmena počtu argumentov
  • Zmena typu údajov

V Jave však nie je možné, ak zmeníme iba typ návratnosti metódy.

výhody

  • Polymorfizmus pomáha programátorom opätovne použiť kód a tiež triedy, ktoré sú kedysi napísané, aby sa otestovali a implementovali. (Opakovaná použiteľnosť kódu)
  • Jediný názov premennej môže ukladať premenné viacerých typov údajov (int, float, double, long, atď.).
  • Zvyšuje čitateľnosť programu.

Prečo by sme mali používať polymorfizmus?

Okrem dynamického polymorfizmu a statického polymorfizmu existujú niektoré programovacie charakteristiky Java, ktoré vykazujú polymorfizmus iný ako dva hlavné typy.

Sú to - nátlak, polymorfné parametre a preťaženie operátora

donucovania

Pochopme nátlak s veľmi jednoduchým príkladom. Zoberme si reťazec s hodnotou „donucovacia trieda:“. Zoberme si ďalšie celé číslo s hodnotou 1. Čo sa stane, keď concat reťazcovú hodnotu s celočíselnou hodnotou? Výstupom tohto zreťazenia bude „trieda nátlaku: 1“. Tomu sa hovorí nátlak. Implicitná konverzia typu sa vykonáva s cieľom zabrániť chybám typu. Robí to kompilátor.

Preťaženie operátora

Predtým, ako začneme s preťažením operátora, známym tiež ako preťaženie metódou, prejdime si príklad. Zvažte reťazec s hodnotou „Operátor“ a ďalší reťazec ako „Preťaženie“. Symbol plus (+) použite s týmito dvoma reťazcami rovnako ako pri pridávaní dvoch celých čísel. (+) Zreťazí tieto dva reťazce. V prípade dvoch celých čísel sa vráti súčet dvoch celých čísel. Ak má jeden symbol alebo operátor schopnosť zmeniť svoj význam v závislosti od spôsobu použitia, typ vystaveného polymorfizmu sa nazýva Preťaženie operátora.

parametre

V polymorfizme sa objekt môže objaviť v mnohých podobách. V jazyku Java sa to týka povolenia prístupu k objektu jedným z nasledujúcich spôsobov, ako napríklad:

1. pomocou referenčnej premennej svojej materskej triedy alebo nadtriedy

2. pomocou referenčnej premennej triedy, v ktorej existuje.

Prečo potrebujeme polymorfizmus?

Hlavným dôvodom, prečo je potrebný polymorfizmus, je skutočnosť, že sa tento pojem vo veľkej miere používa pri vykonávaní dedičstva. Zohráva dôležitú úlohu pri umožňovaní rôznym vnútorným štruktúram objektov pri zdieľaní toho istého externého rozhrania. Polymorfizmus je jasne uvedený ako ten, ktorý je zmapovaný pre mnohých.

Rozsah

Viazanie je pripojenie volania metódy k telu metódy. Máme dva typy väzby.

Statická väzba (skorá väzba): Keď je typ objektu určený v čase kompilácie.

Dynamické viazanie (oneskorené viazanie): Keď je typ objektu určený v čase vykonávania.

záver

Polymorfizmus sa preto považuje za jednu z veľmi dôležitých čŕt objektovo orientovaného programovania. Ak hovoríte o príklade polymorfizmu v reálnom živote, mohol by to byť človek súčasne, ktorý môže mať rôzne vlastnosti, napríklad muž súčasne je syn, manžel, zamestnanec. Tá istá osoba teda získa odlišné správanie v rôznych situáciách. Toto sa z objektovo orientovaného hľadiska nazýva polymorfizmus, dôležitá charakteristika objektovo orientovaného programovania.

Odporúčané články

Toto bol návod na Čo je polymorfizmus ?. Tu sme diskutovali o práci, rozsahu, potrebe a výhodách polymorfizmu. Viac informácií nájdete aj v ďalších navrhovaných článkoch -

  1. Čo je to JavaScript?
  2. Čo je to HTML
  3. Čo je Python
  4. Polymorfizmus v C #
  5. Polia v programovaní Java
  6. Prevod typov v jazyku Java s typmi a príkladmi
  7. Sprievodca prevodom v jazyku Java s príkladmi
  8. Statické viazanie a dynamické viazanie Úvod použitie

Kategórie: