本篇文章来学习一下C#的委托,委托是C#中的一个重要概念,它允许将方法作为参数传递给其他方法。C#中的委托类似于C或C++中的函数指针,并且类型安全。
委托
1.委托的定义
委托(delegate)是方法的代理/代表,委托的是方法,当调用委托时就是调用了这个方法。委托是一类行为的抽象。是方法的引用,是一种数据类型。简而言之,委托是一种数据类型(关键字delegate);委托代表的是方法;当调用委托时就是调用了这个方法。
详细解释:
委托是【声明了返回类型和参数组成】一种数据类型;
委托代表【代理/表示】的是方法【代表和委托签名一致的任何方法,签名:返回类型和参数组成】、【委托是一类行为的抽象】
当调用委托时就是调用【间接调用】了这个方法。【因为委托能存储方法的地址(引用)】
2.签名
2.1签名定义
签名(Signature)通常指的是方法、构造函数、委托、事件等的名称、参数类型和返回类型的组合。签名用于唯一标识一个方法或函数,帮助编译器和运行时区分不同的方法或函数。
2.2方法签名的组成部分
①方法名:方法的名称,通常用于标识该方法。
②参数列表:方法的参数类型及其顺序,不包括参数的名称,但包括参数的类型。
③返回类型:方法的返回类型,但不包括方法的访问修饰符(如public、private等)和static修饰符。
注意,方法签名并不包括访问修饰符、返回类型、static或virtual等修饰符,只关注方法的名称和参数列表。
2.3签名举例
示例1:简单方法签名