Objektum-orientált programozást (OOP) általában használnak a szoftver fejlesztésére. Számos programozási nyelv támogatja az objektum-orientált programozást. Az objektum-orientált programozás módszert kínál egy program osztályok és objektumok felhasználásával történő tervezésére. Az OOP osztálya egy objektum létrehozására szolgáló tervrajz. Egy osztálynak vannak tulajdonságai és módszerei. Az objektum egy osztály példánya. Az OOP négy pillért tartalmaz, mint például az öröklés, a polimorfizmus, az absztrakció és a beágyazás. Ez a cikk a polimorfizmus és az öröklés közötti különbséget tárgyalja az OOP-ban. Az kulcs különbség A polimorfizmus és az OOP öröklődése között ez az A polimorfizmus az objektum többféle módon való viselkedésének képessége, az öröklődés pedig egy új osztály létrehozására szolgál egy létező osztály tulajdonságainak és módszereinek felhasználásával.
1. Áttekintés és a legfontosabb különbség
2. Mi az OOP polimorfizmusa?
3. Mi az örökség az OOP-ban?
4. A polimorfizmus és az öröklés közötti hasonlóságok az OOP-ban
5. Side by side összehasonlítás - Polimorfizmus vs örökség OOP táblázatos formában
6. Összegzés
A polimorfizmus több formát jelöl. Az egyik objektum több viselkedéssel bírhat. A polimorfizmus két kategóriába sorolható. Túlterhelnek és felülbírálják őket.
Nézze meg az alábbi, Java nyelven írt programot.
01. ábra: Túlterhelés
A fenti program szerint létrejön egy A típusú objektum. Obj.sum () hívásakor; megadja a metódus összegével kapcsolatos outputot (). Az obj.sum (2,3) hívásakor; megadja az összeghez kapcsolódó outputot (int a, int b). Megfigyelhető, hogy ugyanazon objektum viselkedése a helyzettől függően eltérő. Ha több módszer létezik ugyanannak a névnek, de eltérő paraméterekkel, akkor ezt nevezik túlterhelés. Más néven statikus kötés vagy összeállítani az időpolimorfizmust.
A polimorfizmus egy másik típusa nyomós. Nézze meg az alábbi, Java nyelven írt programot.
02 ábra: Felfedés
A fenti program szerint létezik egy módszermegjelenítés () az A osztályban. A B osztály az A osztálytól terjed ki. Ezért az A osztályban minden módszer elérhető a B osztály által. Ez örökség. Az öröklési koncepciót később részletesebben ismertetjük.
A B osztály ugyanazzal a módszer-kijelzővel rendelkezik (). Az A típusú objektum létrehozásakor és a hívó megjelenítési módszer esetén a kimenet B eredményt ad. Az A osztályú megjelenítési módszert a B osztályú megjelenítési módszer felülbírálja. Tehát a kimenet B.
Ha vannak módszerek azonos névvel és azonos paraméterekkel, de két különböző osztályban, és ezek kapcsolódnak az örökléshez, akkor ezt felülírónak nevezzük. Más néven Késői kötés, dinamikus kötés, futásidejű polimorfizmus. A túlterhelést és a felülbírálást polimorfizmusnak nevezzük. Ez egy fő koncepció az objektum-orientált programozásban.
Nézze meg az alábbi, Java nyelven írt programot.
03. ábra: Példa az öröklésre
A fenti program szerint az A osztály módszerének sum (), a B osztálynak pedig sub () módszere van.
Az A osztály sum () módszerét a B osztályban kiterjesztő kulcsszóval lehet használni. A meglévő osztály tulajdonságainak és módszereinek újbóli felhasználása új osztály létrehozására örökségként ismert. Még a B osztályban sem létezik sum () módszer; az A osztálytól örökölt. Az öröklés hasznos a kód újrafelhasználhatóságához. Az idősebb osztályt a alap osztály, szuper osztály vagy szülő osztály. A származtatott osztályt osztálynak nevezzük alosztály vagy gyermek osztály.
Az öröklés különféle típusai vannak. Ezek az egyszintű öröklés, a többszintű öröklés, a többszörös öröklés, a hierarchikus öröklés és a hibrid öröklés.
Az Egységes Öröklésben van egy szuper osztály és egy alosztály. Ha az A osztály a szuper osztály, a B osztály az alosztály, akkor az A osztály minden tulajdonsága és módszere elérhető a B osztálynak. Csak egy szint van; ezért egyszintű öröklésnek hívják.
A többszintű örökség osztályoknak három szintje van. A közbenső osztály a szuper osztálytól örököl. Az alosztály a köztes osztálytól örököl. Ha három osztály van, mint A, B és C, és A a szuper osztály, és B a köztes osztály. Akkor B örököl A-től, és C örököl B-től, ez egy többszintű öröklés.
A több öröklésben sok szuper osztály és egy alosztály létezik. Ha három szuper osztály van, úgynevezett A, B, C és D az alosztály, akkor a D osztály örökíthet A, B és C kategóriákból. A C ++ programozási nyelv támogatja a többszörös öröklést. Ez a programozási nyelv, például a Java vagy a C # nem támogatott. Interfészek használják a többszörös örökség megvalósítását ezeken a nyelveken.
Ha vannak olyan osztályok, amelyeket A-nak szuperosztálynak hívnak, és B, C alosztályok, akkor ezek az alosztályok örökölhetik az A osztály tulajdonságait és módszereit. Ezt az öröklési típust hierarchikus öröklésnek hívják..
Van még egy speciális öröklési típus, amelyet hibrid öröklésnek hívnak. Ez a többszintű és a többszörös örökségek kombinációja. Ha A, B, C és D osztályok, és B öröklődik A-tól, és D örököl mind B-től, mind C-től, akkor ez hibrid öröklés.
Polimorfizmus vs örökség OOP-ban | |
A polimorfizmus egy tárgy képessége többféle módon viselkedni. | Öröklés: új osztály létrehozása egy meglévő osztály tulajdonságainak és módszereinek felhasználásával. |
Használat | |
A polimorfizmust arra használják, hogy az objektumok meghívják a metódusok bármely formáját fordítási és futási időben. | Az öröklődést a kód újrafelhasználhatóságához használják. |
Végrehajtás | |
A polimorfizmus módszerekben valósul meg. | Az öröklést osztályokban hajtják végre. |
Kategóriák | |
A polimorfizmus felosztható túlterhelésre és felülbírálásra. | Az öröklődést fel lehet osztani egyszintű, többszintű, hierarchikus, hibrid és többszörös öröklésre. |
A polimorfizmus és az öröklés fő fogalmak az objektum-orientált programozásban. A különbség a polimorfizmus és az öröklődés között az OOP-ban az, hogy a polimorfizmus többféle forma közös felülete, és az öröklődés egy új osztály létrehozására szolgál egy meglévő osztály tulajdonságainak és módszereinek felhasználásával. Mindkét fogalmat széles körben használják a szoftverfejlesztésben.
Letöltheti e cikk PDF verzióját, és offline célokra felhasználhatja, az idézet megjegyzésének megfelelően. Kérjük, töltse le itt a PDF verziót. Különbség a polimorfizmus és az öröklés között az OOP-ban