Java實現SFTP跨伺服器檔案操作
阿新 • • 發佈:2020-11-15
C# Delegates: Step by Step
1.委託的使用與如何呼叫方法的常規思想背道而馳。在常規方法呼叫期間,您將建立一個物件,其中包含要呼叫的方法,呼叫該方法並傳遞所需的引數。一切都發生在一個彈出視窗中,包括定義要呼叫的物件和方法以及呼叫該呼叫。通過委派的方法呼叫採用了不同的方法。它將方法呼叫的定義和方法的實際呼叫分為兩部分。委託是方法的地址的.NET版本。它們是型別安全的類,用於定義返回型別和引數型別。委託類不僅包含對方法的引用,而且還包含對多個方法的引用。儘管自.NET 2.0以來,代表就已經存在,但今天他們在.NET 4中起著重要的作用。 Lambda表示式與委託直接相關。當引數是委託型別時,可以使用Lambda表示式來實現從委託引用的方法。存在將方法傳遞給其他方法的情況的委託。
2.
1 using System; 2 public class Test 3 { 4 public delegate int CalculationHandler(int x, int y); 5 static void Main(string[] args) 6 { 7 Math math = new Math(); 8 //create a new instance of the delegate class 9 10 CalculationHandler sumHandler = new CalculationHandler(math.Sum);View Code11 //invoke the delegate 12 int result = sumHandler(8,9); 13 Console.WriteLine("Result is: " + result); 14 } 15 } 16 17 public class Math 18 { 19 public int Sum(int x, int y) 20 { 21 return x + y; 22 } 23 }
封裝在委託中的有關方法的資訊可以分為兩類:方法簽名和方法目標。
方法簽名包括有關方法引數的數量和型別以及返回型別的資訊。
方法目標包括方法的名稱和方法所在的物件。當我們建立一個封裝方法呼叫的委託物件時,我們必須提供這兩套資訊。
3.