Junior — Middle
Erklären Sie den Zweck und die Funktionsweise von Delegates im Kontext der Programmierung in C#.
sobes.tech KI
Antwort von AI
Delegates in C# sind Typen, die Referenzen auf Methoden mit einer bestimmten Signatur darstellen. Sie ermöglichen es, Methoden indirekt aufzurufen, sie als Parameter zu übergeben und Rückrufe zu implementieren.
Wichtige Punkte:
- Ein Delegate definiert die Signatur einer Methode (Parameter- und Rückgabetypen).
- Es kann jede Methode mit einer passenden Signatur einem Delegate zugewiesen werden.
- Sie ermöglichen die Implementierung von Ereignissen und das Beobachter-Pattern.
Beispiel:
public delegate void Notify(string message);
public class Process
{
public Notify OnCompleted;
public void Start()
{
// ... Arbeit
OnCompleted?.Invoke("Prozess abgeschlossen");
}
}
Hier wird das Delegate Notify verwendet, um über den Abschluss des Prozesses zu informieren.