Obsah:
Definícia - Čo znamená Delegát?
Delegát je objektovo orientovaný, riadený, bezpečný a typovo bezpečný funkčný ukazovateľ v rámci .NET framework. Podpis delegáta obsahuje jeho meno, typ vrátenia a argumenty, ktoré mu boli odovzdané. Namiesto odovzdávania údajov delegát postupuje metódu inej metóde. Delegáti sa používajú v mnohých kontextoch vrátane implementácie spätných volaní a obsluhy udalostí, vstupných vláknitých bodov a viacerých typov špecifikácií metód. Pretože delegát nepozná triedu referencovaného objektu, používa sa na anonymné vyvolanie.
Techopedia vysvetľuje delegáta
Hlavným účelom delegáta je prepojiť objekt delegáta s volajúcim, čo znamená, že volaná referencia metódy nevyžaduje špecifikáciu v čase kompilácie. Delegáti zohrávajú zásadnú úlohu v modeli programovania modelov založenom na udalostiach, kde sú do ovládacích prvkov používateľského rozhrania pridané ovládače udalostí.
Typy delegátov sú:
- Single-cast: Poukazuje na jednu metódu
- Multicast: Vzťahuje sa na viac metód, z ktorých každá má rovnaký podpis a zahŕňa iba metódy vracajúc neplatnosť, aby sa predišlo výnimke počas behu
- Vykonávajú sa pod povolením volajúceho alebo deklarujúceho.
- Delegované objekty sú nemenné.
- Jeho predvolený modifikátor prístupu je súkromný (interný) alebo verejný.
- Delegát môže byť použitý iba po vytvorení inštancie.
- Delegáti môžu byť vyhlásení za vnorené typy s modifikátormi prístupnosti pre svoju triedu alebo štruktúru. V prípade zlyhania počas vykonávania metódy delegáta sa vyhodená výnimka vráti späť volajúcemu delegáta a ďalšie vyvolania sa zastavia.
