Junior — Middle
Explicați conceptul de delegați în limbajul C# și scopul lor principal.
sobes.tech AI
Răspuns de la AI
Delegatii în C# sunt tipuri care reprezintă referințe la metode cu o semnătură și o valoare de returnare specifice. Ele permit stocarea și apelarea metodelor ca obiecte.
Scopul principal al delegaților:
- Permite implementarea callback-urilor
- Oferă flexibilitate în apelarea metodelor, de exemplu, pentru evenimente și gestionarea operațiilor asincrone
- Sunt folosiți pentru implementarea unui model bazat pe evenimente
Exemplu de delegat:
// Declararea delegatului
public delegate void Notify(string message);
class Program
{
static void Main()
{
Notify notifyHandler = ShowMessage;
notifyHandler("Salut, delegați!");
}
static void ShowMessage(string msg)
{
Console.WriteLine(msg);
}
}
Aici, delegatul Notify poate face referire la orice metodă care acceptă un șir de caractere și nu returnează nimic.