Kezdőoldal » Számítástechnika » Programozás » C#, polimorfizmus. Több...

C#, polimorfizmus. Több helyen is olvastam róla, többször kipróbáltam és mégsem értem. A lenti kód alapján kérhetek segítséget?

Figyelt kérdés

Már többször is nekifutottam és több helyen is olvastam róla. Valahogy nem áll össze.


Tegnap este készítettem egy példát magamnak:

https://pastebin (pont) com/XRrBm8ci


Szerettem volna látni, melyik metódus hívódik meg, mi hogy működik. Részben TALÁN sikerült.


Base class típusú objektumot hozunk létre, ez praktikus lehet például akkor, ha tömböt vagy listát töltünk fel és előre nem tudjuk, hogy melyik objektum milyen típusú lesz. Viszont az inherited konstruktorait hívjuk meg, így voltaképp a példány maga az inherited class típusú lesz.

Ha a származtatott osztály felülírta a metódust, az övé hívódik meg, ha nem vagy nem is implementálta, akkor a base.

Ugye valami ilyesmi? :(


2019. júl. 2. 18:17
1 2
 11/17 A kérdező kommentje:

Én ezt a nyelvet már nem akarom "elölről kezdeni".



Amúgy mit kellene még jobban értenem? :)

Mármint még a polimorfizmus előtt, ami ahhoz kell?

2019. júl. 3. 10:44
 12/17 anonim ***** válasza:

"Én ezt a nyelvet már nem akarom "elölről kezdeni"."


Hát akkor ne kezdjed, de ne is csodálkozz hogy sosem fogsz egyről a kettőre lépni. Az előlről kezdés nem azt jelenti hogy most órákig a változókon ülsz, hanem hogy azokat a témáknál újra veszed az anyagod, amiben legalább 1 olyan szó volt amit nem értettél.


Valószínüleg aaz egész oop-t nem érted, vagy ha igen, akkor meg a polimorfizmust is megfogod érteni.

Az a gyanúm hogy random buta magyar könyvekből tanulsz, ezért szorulsz arra hogy gyakori kérdéseken random emberek magyarázzák el neked.

2019. júl. 3. 10:50
Hasznos számodra ez a válasz?
 13/17 A kérdező kommentje:

Az nagyjából megvan, hogy mit érdemes külön osztályba pakolni és miért.

Tudok újrahasznosítható osztályokat írni, múlt héten továbbfejlesztettem egy progimat és úgy tudtam használni a már meglévő osztályokat, mint a huzat.


Nagyjából értem, mi az abstract és mi az interface, mire jó az IEnumerable, IDisposable, IComparable.


Igen, az öröklésnél vannak fekete foltok.


Például, hogy ha new operátoros az inherited metódus, miért nem az hívódik meg polimorfizmusnál, override esetén akkor meg miért az.

2019. júl. 3. 11:00
 14/17 A kérdező kommentje:

Magyarokból tanultam, mára angolul nézek utáns dolgoknak, bár ez a téma erős lenne angolul még....


Ezért IS próbálom ki néha, hogy mi hívódik meg és próbálok rájönni az okára.

2019. júl. 3. 11:12
 15/17 anonim ***** válasza:
0%

Őszintén szólva ha ezt nem érted, lehet nem neked való az egész... Ez a lelke mindennek, ha ennyire leragadsz ennél, nem feltétlen neked való a programozás, bocsesz.


Most ha pl. van egy kutya őszosztályod, aminek van egy valami methodja, azt ugyanúgy eléri a gyerekosztály is, ha privát a method, ha gyerekosztályban van ugyanolyan nevű method, akkor az ősosztályét írod felül. Ugyanez áll fieldre ésatöbbi. Azért van ős, mert fölösleges 598643958 osztályt létrehoz pont ugyanolyan fieledkkel és methodokkal, mikor van, ami közös is lehet.

2019. júl. 4. 07:12
Hasznos számodra ez a válasz?
 16/17 A kérdező kommentje:

Ez nem inkább a sima öröklődés, amit leírtál?


Ennyire azért nem gáz, hogy tökegyedül nem jövök rá erre pár hónap alatt....

Mások meg a Pythont javasolják kezdőnyelvnek, hogy ilyesmi (mint polimorfizmus) még pár hónapig ne forduljon elő.

2019. júl. 4. 07:31
 17/17 anonim ***** válasza:

Öröklődés is ja, de polimorfizmusis, mert az alosztályok tudnak úgy viselkedni, mint az ősosztály, ha az a típusuk.

[link]

Olvasd el, tökm1, hogy ez Java-s de teljesen érthető.

2019. júl. 5. 07:06
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!