C#方法作为方法的输入参数
时间: 2023-10-08 22:12:16 浏览: 114
可以将一个C#方法作为另一个方法的输入参数,这种方法称为委托。在C#中,委托是一种特殊的类型,可以用来封装一个或多个方法。当一个方法需要调用另一个方法时,可以将该方法的委托作为参数传递给另一个方法,以便在需要的时候调用该方法。例如,假设有一个方法A,需要调用另一个方法B,可以将方法B的委托作为参数传递给方法A,然后在方法A中调用该委托以调用方法B。具体实现方式可以参考以下示例代码:
```csharp
public delegate void MyDelegate(string message);
public class MyClass
{
public void MyMethod(string message)
{
Console.WriteLine(message);
}
}
public class Program
{
static void Main(string[] args)
{
MyClass obj = new MyClass();
MyDelegate del = new MyDelegate(obj.MyMethod);
del("Hello World!"); // 调用委托以调用MyMethod方法
}
}
```
在这个示例中,我们定义了一个委托类型MyDelegate,该委托类型可以封装一个参数为string类型、返回值为void的方法。然后,我们定义了一个类MyClass和一个方法MyMethod,该方法可以接受一个字符串参数并将其输出到控制台。最后,在Main方法中,我们实例化了MyClass类的对象,创建了MyDelegate委托类型的变量并将其初始化为MyClass类的MyMethod方法的委托。最后,我们调用了该委托以调用MyMethod方法,并将“Hello World!”作为参数传递给该方法。
阅读全文