Ez a módszer túlterhelés polimorfizmus verem túlcsordulás az orosz

Nos, igen és nem. Ez attól függ, hogy mit értenek polimorfizmus.

A polimorfizmust általában az a képesség, hogy kezelje ugyanúgy szervezetekkel különböző. Vagy egy kicsit több kutatást, hogy létezik egy közös interfész (eltekintve C #) van különböző típusú szervezetek. Ez egy nagyon általános fogalom, amely lehet nagyon sokat, hogy szakaszon. Mi van, ha ez megtörténik, és milyen nyelvi absztrakciós ugyanakkor részt fog venni, nem olyan fontos.







Ezzel a módszerrel a túlterhelés polimorfizmus utal leginkább: ez ad-hoc polimorfizmus funkcióihoz el tud küldeni a különböző típusú (a megvalósított torlódás), és ezzel egyidejűleg egy másik kód kerül végrehajtásra. (Eljárás objektum osztályok lehet tekinteni, mint egy függvény egy további rejtett érvelés: az objektumot, amelynek módszert nevezik [ezt Sharpe]).

Lehet, hogy egy logikus kérdést: nem létezik, akkor a különböző funkciók túlterhelés, nem törik, ha egyidejűleg megfelelő meghatározása polimorfizmus? Válasz: Van egy polimorfizmus szinten nyelvet. és ha a nyelv a túlterhelés, az azonos nevű, de különböző típusú tekintik egy és ugyanazt a funkciót, a definíció teljesül, és minden rendben van.

Kisebb mértékben, természetesen eltérő kódot helyeznek különböző helyeken és végrehajtása valahogy el kell küldeni különböző helyeken, technikailag utalva az átadott értékek különböző módon. De te és ezek a szintek nem közvetlenül működik, polimorfizmus van, ha van (ami nem valószínű), hogy nem teljesen (vagy nem?) Az egyetlen, amit használ.

A PLO egy polimorfizmus általában megérteni sokkal szűkebb fogalom: a képesség, hogy hívja ugyanazzal a módszerrel bármilyen tárgy egy adott osztály / felület vagy annak bármely alosztályok / végrehajtását.

Ezzel polimorfizmus túlterhelés valóban irreleváns.

(* Ad hoc, latin, szituációs, ad-hoc)

Hagyományosan, a PFSZ Közösség „polimorfizmus” nevezett csak egyfajta polimorfizmus kapcsolódó altípusok. Az FP Közösség „polimorfizmus” nevezik paraméteres polimorfizmus. Wikipedia idézi háromféle polimorfizmus CS - ad hoc, parametrikus és altípusok. Ugyanakkor más források tud nyújtani egy másik részlege.

A „statikus” és „dinamikus” polimorfizmus kizárólag az adott végrehajtását egy adott nyelven, különösen a dinamikusan tipizált nyelv túlterhelt funkciókat lehet megvalósítani a program során.

Válaszol november 23 '16 at 13:48

@DenisBubnov C # és támogatja az OP és a PFSZ és más paradigmák. - Abyx november 23 '16 at 14:18

@DenisBubnov, és úgy gondolom, hogy helyes-e. Végtére is, a koncepció a polimorfizmus létezik számos nyelven, és a programozás különösen. Minden nyelven és paradigmák a különböző polimorfizmus és így, ha azt mondják, két programozó egy nyelven, de különböző paradigmák, amelyek nem értik. És mit mondhatunk a vita a programozók különböző nyelveken. Ezért a fenti ismeretek csak hasznára válik, és segít, hogy jobban megértsük a problémát. - OlmerDale november 23 '16 at 14:34







A koncepció a polimorfizmus nincs egyértelmű meghatározása, hanem obktno szemlélet általában elfogadják, hogy van két fajta polimorfizmus:

Dinamikus (a virtuális módszerek alkalmazását és azok újraszabályozása osztályok leszármazottai) - ebben az esetben a verzió a kód határozza meg a hívott CLR futásidejű, átadva a lánc felülbírálja a gyermek osztályok.

Statikus (használat generikus (generikumok)) - ebben az esetben az egy és ugyanazon verzióját a kódot a különböző típusú objektumot.

Túlterhelés módszerek alapján a fenti terminológiát nem polimorfizmus, mert egyedi kódot és az objektum típusát ismert fordításkor. Más szóval, ebben az esetben, csak eltérő módszereket, az azonos nevű, különböző típusú vagy a paraméterek száma telt el.

Ugyanazt az eredményt tudtunk hozzá a nevét, a módszer paraméter típusokat és az építészet semmi izmentitsya alkalmazások és polimrfizm - jelentése elsősorban egy olyan eszköz, az építészeti megközelítés a problémák megoldásához.

Polimorfizmus más. Különösen a statikus és dinamikus.

Statikus polimorfizmus - ha meg van határozva a túlterhelés több funkció alapján, hogy milyen típusú a paraméterek listája.

Tehát van minden terminológia kérdése. Lehet, hogy a kollégái szerint a polimorfizmus kizárólag tájékoztató jellegű, dinamikus.

C #, akkor ossza bármilyen, az azonos nevű, két vagy több módszer az azonos osztályú, feltéve, hogy a paraméterek bejelentett másképp. Ebben az esetben azt mondjuk, hogy a módszerek vannak terhelve, és a folyamatot nevezzük módszer túlterhelése.

Tekintsük itt van egy egyszerű módszer:

És írni módszerek túlterhelés:

Mi túlterhelt módszer OverloadMethod kétszer.

Mi látható az eljárás során a hívás:

Módszer túlterhelés támogatja polimorfizmus tulajdon, mert ily módon hajtják végre a C # a fő elv a polimorfizmus egy felületen - egy sor módszerekkel.

C #, minden módszer lehet hozzárendelni az azonos nevet. C # fordító határozza meg, melyik módszer változatával OverloadMethod lehet hivatkozni típusa alapján az érvelés során továbbított a módszer hívás.

C #, meghatározott fogalmát aláírás azt a módszert nevet és egy listát a paraméterei; Ami a túlterhelés ez a kifejezés azt jelenti, hogy az egyik osztály nem létezik két módszer azonos aláírás. Hangsúlyozni kell, hogy az aláírás nem tartalmazza a visszatérési típusa, mert nem veszik figyelembe, amikor a C # fordító dönt az eljárás túlterhelés. Az aláírás nem szerepel, mivel a módosító params.

Ha a C # nem támogatja túlterhelés, akkor meg kell adni az egyes eljárás a nevét, ami nem túl kényelmes. Ebben az esetben a OverloadMethod módszer megvalósítja több túlterhelés.

A polimorfizmus - az az elv, az objektum-orientált programozás után tokozás és öröklés. Ez a tulajdonság, amely lehetővé teszi, hogy ugyanazt a nevet használja a megoldás a két vagy több hasonló, de technikailag különböző feladatokat. A cél a polimorfizmus kapcsolatban az objektum-orientált programozás a használata egy egységes név megadására közös class action.

A koncepció a polimorfizmus gyakran különbözőképpen értelmezték, akkor egy csomó ötletet, de minden jön le, hogy egy. Ennek eredményeként, a válasz arra a kérdésre: A túlterhelés polimorfizmus módszerek? - Azt mondják, YES.




Kapcsolódó cikkek