Sobes.tech
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.