|
|
Veröffentlicht am 02.03.2018 15:35:03
|
|
|

Ist es eine Provision? Ein Delegierter ist ein typsicheres Objekt, das auf eine andere Methode (oder mehrere Methoden) im Programm verweist, die später aufgerufen werden. Laienhaft gesagt ist ein Delegierter ein Objekt, das auf eine Methode verweisen kann, und wenn ein Delegierter erstellt wird, erstellt er ein Objekt, das auf die Methode verweist, und dann kann die Methode aufgerufen werden, das heißt, der Delegierte kann die Methode aufrufen, auf die er sich bezieht.
Wie nutze ich Delegation? 1. Definieren Sie die Art der Übertragung
[Zugriffsmodifikator] Der Delegierte gibt den Typ-Delegiertennamen (Parameter) zurück;
2. Deklarieren Sie das anvertraute Objekt
Delegiertenname Der Name der demissionierten Instanz;
3. Erstellen Sie ein Delegationsobjekt (bestimmen Sie, an welche Methode gebunden werden soll)
Delegierteninstanzname=Neuer Delegiertenname (Methode einer bestimmten Klasse)
4. Verwenden Sie die anvertraute Aufrufmethode
Delegierter Instanzname (Parameter)
Vorsichtsmaßnahmen für die Übertragung:1. Die Delegation und die Methode müssen dieselben Parameter haben.
2、Ein Delegierter kann mehrere Methoden aufrufen, d. h. ein Delegat kann eine Liste aufrufbarer Methoden anstelle einer einzigen Methode, bekannt als Multicast (Multicast), führen.。
3、Die Implementierung von Methoden erhöht und verringert mit += und -= Operationen
Beispiel:
Schreiben:
1. Delegierten-Delegiertenname = neuer Delegierter (Methodenname, der aufgerufen wird); Bestellname (Parameter);
2. Delegierter Delegiertenname = Methodenname, der aufgerufen wird; Bestellname (Parameter);
3. Anonyme Methode
Delegate Delegate Name=Delegate(Parameter){Methodenkörper, der aufgerufen wird}; Bestellname (Parameter);
4. Lambda-Ausdruck
Delegiertenbestellungsname=((Parameter 1,。。 Parameter n)=>{Methodenkörper, der aufgerufen wird}); Bestellname (Parameter);
5. Verwenden Sie Action <T>und Func<T>, die erste hat keinen Rückgabewert
Func< Parameter 1, Parameter 2, Rückgabewert> Delegiertenname = ((Parameter 1, Parameter 2) => {Methodenkörper mit Rückgabewert }); Rückgabewert = Ordnungsname (Parameter 1, Parameter 2);
Aufklebercode:
|
Vorhergehend:Pinge mehrere Standorte, um zu prüfen, ob die IP-Adresse blockiert istNächster:ASP.NET WebApi mit Json geliefert wird und das Datum mit T zurückgibt, kann nicht formatiert werden
|