Objektum-orientált programozás (OOP) az egyik fő paradigma a szoftverfejlesztésben. Ez egy módszertan egy program megtervezésére osztályok és objektumok felhasználásával. Az osztály egy terv. Leírja, hogy mit kell tartalmaznia az objektumban. Meghatározza a tulajdonságokat vagy attribútumokat, valamint azokat a módszereket, amelyekből az objektumnak tartalmaznia kell. Ezért egy objektum egy osztály példánya. Ezek az objektumok kommunikálnak más objektumokkal. Az OOP egyik fő fogalma a polimorfizmus. Ez egy tárgy képessége, hogy többféle módon viselkedjen. A polimorfizmust két részre osztják, amelyek túlterhelik és felülbírálják. Ez a cikk a kettő közötti különbséget tárgyalja a Java-ban. Az kulcs különbség a Java túlterhelése és a felülbírálás között az, hogy A túlterhelés az a képesség, hogy ugyanazon név több módszerét hozzon létre különböző implementációkkal, és a felülbírálás az alosztály módszer megvalósításának biztosítása, amely már létezik a szuperosztályban.
1. Áttekintés és a legfontosabb különbség
2. Mi a túlterhelés a Java-ban?
3. Mi a legfontosabb Java-ban?
4. hasonlóságok a Java túlterhelése és felülírása között
5. Side by side összehasonlítás - Túlterhelés vs felülbírálás a Java táblázatos formában
6. Összegzés
A túlterhelés az a képesség, hogy ugyanazon név több módszerét hozzon létre különböző implementációkkal. Lásd az alábbi Java kódot.
01. ábra: Java program, amely magyarázza a túlterhelést különféle argumentumokkal
A fenti program szerint az A osztály két azonos nevű módszert tartalmaz. Az első összeg módszerének két paramétere van. A második összeg módszer három paraméterrel rendelkezik. Az A típusú objektum és a hívó összeg (2,3) létrehozásakor az összehívási módszer két paraméterrel történik: sum (int a, int b) és visszatér 5. Az A típusú objektum és a hívó összeg (2) létrehozásakor. , 3.4), meghívja a másik összeg módszerét három paraméterrel, amely az összeg (int a, int b, int c), és visszatér 9.
A módszer neve azonos, de a paraméterek száma eltérő. Megfigyelhető, hogy ugyanaz az objektum eltérően viselkedik. Ezt a koncepciót túlterhelésnek nevezik. Ezt is nevezik Statikus kötés vagy Összeállítja az időpolimorfizmust.
Túlterhelhetők is különféle adattípusokkal. Lásd az alábbi Java kódot.
02 ábra: Java program, amely magyarázza a túlterhelést különféle argumentumokkal
A fenti program szerint az A osztály két azonos nevû módszerbõl áll. Az összeg (int a, int b) módszer két egész számot kap. Az összeg (kettős és kettős b) két kettős értéket kap. Az A típusú objektum és a hívó összeg (2,3) létrehozásakor az összeget hívja (int a, int b) és visszatér az 5. értéket. Amikor összeget hív (3.4, 5.6), összeget hív (sum b) és adja vissza a 9.0 értéket. Ebben a példában a módszereknek ugyanaz a neve, de eltérő típusú változóknak. Ez szintén túlterhelő.
A Java-ban alosztályokat lehet létrehozni a már létező osztályokkal. Az új osztály létrehozása helyett a már létező osztály tulajdonságait és módszereit is lehet használni. A létező osztály a szuperosztály, a származtatott osztály pedig az alosztály. Amikor az alosztály végrehajtást biztosít egy módszerhez, amely már a szuperosztályban van, akkor ezt felülírónak nevezzük. Lásd az alábbi Java programot.
03. ábra: Java program a felülbíráláshoz
A fenti program szerint az A osztály rendelkezik metóduskijelzővel (). A B osztály az A osztálytól kezdve kiterjed, tehát az A osztály tulajdonságai és módszerei a B osztály számára elérhetők. A B osztály rendelkezik egy speciális megvalósítású módszermegjelenítéssel (). Az A típusú objektum létrehozásakor és a megjelenítési módszer meghívásakor megadja a B kimenetet. Annak ellenére, hogy az A osztály rendelkezik megjelenítési módszerrel, a B osztályú megjelenítési módszer felülbírálásra kerül. Az alosztály olyan módszert hajt végre, amely a szuperosztályban már létezik.
Ez a koncepció a polimorfizmus egy típusa, amelyet felülíró néven ismertek. Azt is nevezik Késői kötés, Dinamikus kötés, Futásidejű polimorfizmus.
Túlterhelés vs felülbírálás Java-ban | |
A Java túlterhelése az a képesség, hogy ugyanazon név több módszerét hozzon létre különböző implementációkkal. | A Java felülírása egy speciális megvalósítást biztosít az alosztályú módszerben egy módszer számára, amely már létezik a szuperosztályban. |
paraméterek | |
Túlterhelés esetén a módszereknek ugyanaz a neve, de eltérő számú paraméter vagy eltérő típusú paraméter. | A felülírás során a metódusok neve azonos, és a paramétereknek azonosaknak kell lenniük. |
Témák | |
A túlterhelés az osztályon belül történik. | Az elsőbbség azon két osztályon belül fordul elő, amelyek öröklési kapcsolatban állnak. |
Szinonimák | |
A túlterhelést összetett időbeli polimorfizmusnak nevezzük. | Az felülbírálást futási idő polimorfizmusnak nevezzük. |
A polimorfizmus az objektumorientált programozás egyik fő koncepciója. Ez lehetővé teszi az objektumok számára, hogy többféle módon viselkedjenek. Ez lehet túlterhelés vagy felülbírálás. A túlterhelés az összeállítási idő polimorfizmusa, és felülbíráló a futásidejű polimorfizmus. Hasznosak a szoftveralkalmazások fejlesztésében. A felülírás és a túlterhelés között az a különbség, hogy a túlterhelés az a képesség, hogy ugyanazon név több módszerét hozzon létre különböző megvalósításokkal, és a felülbírálás egy speciális megvalósítást biztosít az alosztályú módszerben egy módszerre, amely a szuperosztályban már létezik. Lehetséges a Java túlterhelése és felülírása is.
Letöltheti e cikk PDF verzióját, és offline célokra felhasználhatja, az idézet megjegyzésének megfelelően. Töltse le itt a PDF verziót. Különbség a Java túlterhelése és felülírása között
1.tutorialspoint.com. „Java felülbírálás.” A lényeg. Itt érhető el
2. „Módszertúlterhelés Java-ban - Javatpoint.” Itt érhető el
3. „A Java felülbíráló módszere - javatpoint.” Itt érhető el