Tartalomjegyzék:
- Fő különbség - felülbírálás vs túlterhelés C # -ben
- Mi az elsőbbség a C # -ben?
- Mi a túlterhelés a C # -ben?
- Mi a hasonlóság a felülbírálás és a túlterhelés között a C # -ben?
- Mi a különbség a felülbírálás és a túlterhelés között a C # -ben?
- Összegzés - felülbírálás vs túlterhelés a C # -ben
Videó: Különbség A Felülbírálás és A Túlterhelés Között C-ben
2024 Szerző: Mildred Bawerman | [email protected]. Utoljára módosítva: 2023-12-16 08:39
Fő különbség - felülbírálás vs túlterhelés C # -ben
A legfontosabb különbség a felülbírálás és a túlterhelés között a C # -ben az, hogy az felülbírált metódus-hívás és a definíciója közötti kötés futás közben, míg a túlterhelt metódus-hívás kötése a definíciójához fordítási időben történik.
A C # egy általános célú programozási nyelv, amelyet a Microsoft fejlesztett ki. A C # fő előnye, hogy támogatja az objektumorientált programozást (OOP). Az OOP egyik pillére a polimorfizmus. Több objektumot ad egy objektumnak. Kétféle típus létezik a polimorfizmusban: felülbírálás és túlterhelés. Ez a cikk a módszer felülírása és a túlterhelés különbségét tárgyalja a C # -ben.
TARTALOM
1. Áttekintés és kulcsfontosságú különbség
2. Mi az elsőbbség a C #
3-ban? Mi a túlterhelés a C #
4.-ben. A felülbírálás és a túlterhelés hasonlóságai a C #
5-ben. Egymás melletti összehasonlítás - felülbírálás vs túlterhelés C # -ben táblázatos formában
6. Összefoglalás
Mi az elsőbbség a C # -ben?
Az OOP-ban egy másik fontos fogalom az öröklés. A már létező osztály attribútumainak és módszereinek használata. Javítja a kód újrafelhasználhatóságát. A már létező osztály az alaposztály, az új osztály pedig származtatott osztály. A polimorfizmus felülbírálásakor kell lennie egy alaposztálynak és egy származtatott osztálynak. Az felülbírált metódushívás kötése a definícióhoz futás közben történik. Egy példa a következő.
01. ábra: C # program felülírással
A fenti program szerint a Shape osztály az alaposztály, és tartalmazza a megjelenítési módszert. Az osztály téglalap és háromszög származtatott osztályok. Ezek a származtatott osztályok ugyanazt a módszert mutatják be saját megvalósításaikkal is.
Először az obj referencia változó jön létre. A Shape objektumra mutat. Tehát a Shape osztály megjelenítési módja végrehajtásra kerül. Ezután a referencia változó a Téglalap objektumra mutat. Tehát a Téglalap osztály megjelenítési módja végrehajtásra kerül. Végül a referencia változó a Háromszög objektumra mutat. Tehát a Háromszög osztály megjelenítési módja végrehajtásra kerül. Az alaposztály megjelenítési módszerét a származtatott osztályok megjelenítési módszerei felülírják.
A futtatás módjáról futás közben döntenek. A Shape osztályt 'virtuális' kulcsszóval írják. A Téglalap és a Háromszög osztályokat 'felülbírálás' kulcsszóval írják. Ha ezeket a kulcsszavakat nem használják, a kimenet mindenki számára kinyomtatja a Shape osztály megjelenítési módszerének tartalmát.
Mi a túlterhelés a C # -ben?
Túlterhelés esetén több módszernek ugyanaz a neve, de eltérő paraméterekkel. A paraméterek különböző típusúak lehetnek. A módszerek eltérő számú paraméterrel is rendelkezhetnek. A módszer túlterhelése ugyanabban az osztályban fordul elő. A túlterhelt módszerek kötődése a definícióhoz fordítási időben történik. Lásd az alábbi C # programot.
02. ábra: C # program túlterheléssel
A fenti program szerint az A osztálynak két azonos nevű módszere van, az úgynevezett összeg. Különböző típusú paramétereik vannak. A fő programban létrejön egy A objektum. Az összeg (2,3) egész számokkal meghívja az összeg metódust. Az összeg (5.1, 7.94) kettős értékekkel hívja meg az összeg metódust. Mindkét módszernek ugyanaz a neve és azonos számú paramétere van. De a paramétertípusok eltérőek. A szükséges módszert ennek megfelelően hívjuk meg. Túlterhelés akkor is előfordulhat, ha a metódusok és a paraméterek megegyeznek, de a paraméterek száma eltér.
Mi a hasonlóság a felülbírálás és a túlterhelés között a C # -ben?
A C # -ben mind az felülbírálás, mind a túlterhelés a polimorfizmus egyik típusa
Mi a különbség a felülbírálás és a túlterhelés között a C # -ben?
Különböző cikk a táblázat előtt
Felülbírálás vs túlterhelés C # -ben |
|
A C # -en felülírva egy konkrét megvalósítást kell biztosítani egy származtatott osztály-módszerben az alaposztályban már létező módszer számára. | A C # túlterhelése több metódust hoz létre ugyanazzal a névvel, különböző megvalósításokkal. |
Paraméterek | |
A C # Felülírásokban a metódusoknak ugyanaz a neve, azonos paramétertípusai és azonos számú paramétere van. | A C # Túlterhelésnél a módszereknek ugyanaz a neve, de más számú paraméterük vagy más típusú paraméterük van. |
Esemény | |
A C # esetében az felülbírálás az alaposztályon és a származtatott osztályon belül történik. | C # esetén a túlterhelés ugyanazon osztályon belül történik. |
Kötési idő | |
A felülbírált metódushívás a definíciójához való kötése futás közben történik. | A túlterhelt metódushívás hozzákapcsolása a definíciójához fordítási időben történik. |
Szinonimák | |
A felülírást futásidejű polimorfizmusnak, dinamikus polimorfizmusnak vagy késői kötésnek nevezzük. | A túlterhelést fordítási idő polimorfizmusnak, statikus polimorfizmusnak vagy korai kötődésnek nevezzük. |
Összegzés - felülbírálás vs túlterhelés a C # -ben
A felülbírálás és a túlterhelés a polimorfizmus két típusa. A különbség a felülbírálás és a túlterhelés között a C # -ben az, hogy az felülbírált metódushívásnak a definíciójához való kötése futás közben, míg a túlterhelt metódushívás definiálásához fordítási időben történik.
Ajánlott:
Különbség A Fázis Különbség és Az út Különbség Között
Fáziskülönbség vs útbeli különbség A fáziskülönbség és az útkülönbség az optika két nagyon fontos fogalma. Ezeket a jelenségeket a
Különbség Az Felülbírálás és A Túlterhelés Között
Felülbírálás vs túlterhelés A felülbírálás és a túlterhelés metódus két fogalom / technika / szolgáltatás, amely néhány programozási nyelvben megtalálható. Mindkettő klara
Különbség Az Android Okostelefonok Között A Samsung Epic 4G és A HTC EVO 4G Között
Android okostelefonok A Samsung Epic 4G és a HTC EVO 4G között a Samsung Epic 4G és a HTC Evo 4G az első okostelefon, amely a 4G hálózaton fut. A küzdelemben
Különbség A Szemüveg Között Az Ingyenes 3D Telefon LG Optimus 3D és Az LG Revolution 4G Telefon Között
Szemüveges 3D telefon LG Optimus 3D vs LG Revolution 4G Phone First Szemüveges ingyenes 3D telefon LG Optimus 3D és LG Revolution 4G két csúcskategóriás telefon, sok
Különbség A Túlterhelés és Az Felülbírálás Között A Java-ban
Kulcskülönbség - A Java objektumorientált programozásában (OOP) a túlterhelés és az felülbírálás a szoftverfejlesztés egyik fő paradigmája. Ez egy módszertan a