Junior — Middle
Εξηγήστε την έννοια των delegates στη γλώσσα C# και τον κύριο σκοπό τους.
sobes.tech AI
Απάντηση από AI
Οι delegates στη C# είναι τύποι που αντιπροσωπεύουν αναφορές σε μεθόδους με συγκεκριμένη υπογραφή και τιμή επιστροφής. Επιτρέπουν την αποθήκευση και την κλήση μεθόδων ως αντικείμενα.
Ο κύριος σκοπός των delegates:
- Επιτρέπουν την υλοποίηση callbacks
- Παρέχουν ευελιξία κατά την κλήση μεθόδων, π.χ. για γεγονότα και επεξεργασία ασύγχρονων λειτουργιών
- Χρησιμοποιούνται για την υλοποίηση ενός μοντέλου βασισμένου σε γεγονότα
Παράδειγμα delegate:
// Δήλωση delegate
public delegate void Notify(string message);
class Program
{
static void Main()
{
Notify notifyHandler = ShowMessage;
notifyHandler("Γειά σου, delegates!");
}
static void ShowMessage(string msg)
{
Console.WriteLine(msg);
}
}
Εδώ, το delegate Notify μπορεί να αναφέρεται σε οποιαδήποτε μέθοδο που δέχεται μια συμβολοσειρά και δεν επιστρέφει τίποτα.