C# Action委托

news/2025/2/12 21:00:18/

委托内核就是封装--就是将业务方法封装成委托调用

Action委托是C#中的一个预定义委托类型,它表示一个不返回值的方法。Action委托可以用于封装一个方法,然后将其作为参数传递给另一个方法,或者将其赋值给一个委托变量,以便在需要时调用该方法。

Action委托的定义如下:

```csharp
public delegate void Action();
public delegate void Action<in T>(T obj);
public delegate void Action<in T1, in T2>(T1 arg1, T2 arg2);
// ...
```

Action委托的用法示例:

```csharp
// 定义一个不带参数的方法
public void SayHello()
{
    Console.WriteLine("Hello!");
}

// 定义一个带一个参数的方法
public void SayName(string name)
{
    Console.WriteLine("My name is " + name);
}

// 将方法封装成Action委托
Action helloAction = new Action(SayHello);
Action<string> nameAction = new Action<string>(SayName);

// 调用Action委托
helloAction(); // 输出:Hello!
nameAction("Tom"); // 输出:My name is Tom
```

在上面的示例中,我们首先定义了两个方法SayHello和SayName,然后将它们封装成Action委托helloAction和nameAction。最后,我们通过调用helloAction和nameAction来执行这两个方法。

需要注意的是,Action委托的参数个数和类型是固定的,如果需要传递多个参数,可以使用Action<T1, T2, ...>委托,其中T1、T2等表示参数的类型。


http://www.ppmy.cn/news/405463.html

相关文章

软件测试中如何编写单元测试用例(白盒测试)

目录 前言&#xff1a; 一、 单元测试的概念 二、开始测试前的准备 三、开始测试 四、完成测试 前言&#xff1a; 单元测试是软件测试中一种重要的测试方法&#xff0c;它是在代码级别进行测试&#xff0c;通过对每个模块或功能进行独立测试来保障代码的正确性和可靠性。…

解密:斐讯N1为何火了?分享全套N1救砖指南!值得收藏

我的斐讯N1好久不用想刷个电视盒子&#xff0c; 刚开始usb burning tool发现不了设备。 根据B站视频解决解密&#xff1a;斐讯N1为何火了&#xff1f;分享全套N1救砖指南&#xff01;值得收藏_哔哩哔哩_bilibili 但烧录不进去&#xff0c;一直提示&#xff1a; Romcode/初始…

索尼Xperia Z2 SGP521/SGP 511 无限重启的解决

在平板上更新完搜狗浏览器后&#xff0c;一直提示搜狗浏览器无法打开。之后就一直不停地重启。 解决&#xff1a;不用recovery刷机。在开机后过一会才重启。这时候进设置&#xff0c;把搜狗浏览器卸掉就可以了。

n1备忘笔记

n1备忘笔记 安装docker curl -fsSL https://get.docker.com | bash systemctl start docker service docker start systemctl enable docker.service systemctl status docker.service webdav cd /usr/local/webdav wget https://hub.fastgit.org/hacdias/webdav/releases/down…

日语学习 N1 单词

1、小さな犯罪を取り締まることが、▁▁▁▁大きな犯罪を減らすことにつながるのだ。 &#xff11;あるいは &#xff12;さほどは &#xff13;ひいては &#xff14;もしくは 正确答案:&#xff13;ひいては 解释&#xff1a;句意&#x…

go_n1

go 的书籍&#xff1a; http://idea.javatiku.cn/https://docs.hundan.org/gopl-zh/ https://draveness.me/golang/ 1129------------------- import re print {greet} from {language}..format(greet "Hello world", language Python) 1126--------------- packag…

N1刷Openwrt

思维导图&#xff1a; 一、准备工具 1、OpenWrt固件&#xff08;选择o版解压获得img文件&#xff09; 链接&#xff1a;https://pan.baidu.com/s/1pQ73X3WW9NXdCv3ZPihpQg?pwdffnk 提取码&#xff1a;ffnk o版&#xff1a;为了支持flowoffload加速&#xff0c;打了很多openwr…

N1

( 01 ~ 20 ) 重点句型 How are you ? answer: Not too bad!/Pretty good!/Couldn’t be better!/Just so-so/I’m just my oldself! Haven’t seen you for a long time. 好久不见 What is luccy’s job ? What nationality are you ? Are you a teacher ? How are you to…