委托的基本认识_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 委托的基本认识

委托的基本认识

 2017/7/31 10:38:49  不想成为Coder的Coder  程序员俱乐部  我要评论(0)
  • 摘要:1.什么是委托?1.1委托是一种引用类型,该类型适用于将方法用特定的签名封装,我们可以将委托理解为一个封装了函数指针和方法的特殊类型。1.2使用委托我们可以将方法封装在委托中,然后调用委托就可以调用其中的方法2.委托的基本声明格式修饰符delegate返回类型委托名(参数列表)——返回类型和参数列表要和方法一致3.如何理解委托3.1我们可以将委托看作一个箱子,将返回类型和参数列表看作是放进箱子物品的约束了,将方法看作一个能都被放进箱子里面的物品,当约束被满足,我们就可以将方法放到箱子里面。4
  • 标签:认识

1.什么是委托?

1.1委托是一种引用类型,该类型适用于将方法用特定的签名封装,我们可以将委托理解为一个封装了函数指针和方法的特殊类型。

1.2使用委托我们可以将方法封装在委托中,然后调用委托就可以调用其中的方法

2.委托的基本声明格式

修饰符 delegate 返回类型 委托名(参数列表)——返回类型和参数列表要和方法一致

3.如何理解委托

 3.1我们可以将委托看作一个箱子,将返回类型和参数列表看作是放进箱子物品的约束了,

将方法看作一个能都被放进箱子里面的物品,当约束被满足,我们就可以将方法放到箱子里面。

4.委托的基本使用规则

4.1首先我们先声明一个委托

4.2创建一个委托实例

4.3根据委托定义一个方法

4.4使用委托调用方法

4.5将委托与方法关联起来

5.下面通过代码理解委托

5.1首先我们有一个用来打印字符串的类

class PrintClass
{
//.定义一个用来打印字符串的方法
public void Print(string str)
{
Console.WriteLine("str");
}
}

5.2现在我们定义一个用来打印Hello的类 里面有一个打印Hello的方法,但是我们不想在自己里面来做打印的动作,我们想要将这个动作交给 PrintClass来做

好了现在我们可以使用委托来完成这件事

class HelloClass

 {

  public void PrintHello()

  {

   }

  }

5.2.1首先我们先在类外声明一个委托

public delegate void PrintHandler(string str);

5.2.2我们在 HelloClass类中创建一个委托实例

  public PrintHandler PrintHandle;

5.2.3由于我们已经有一个方法了所以这一步跳过 如果没有 我们就创建一个方法

5.2.4我们在PrintHello中调用委托激活方法

//打印Hello
public void PrintHello()
{

//我们要在这里判断一下委托是否可以被调用
if(PrintHandle!=null)
{
//5.激活委托

PrintHandle.Invoke("Hello");

}
}

5.2.5 我们现在已经准备好了只要将委托与方法关联起来 当调用HelloClass中的PrintHello()的时候 就会调用到PrintClass中的Ptint()

static void Main(string[] args)
{
PrintClass Pc = new PrintClass();
HelloClass Hc = new HelloClass();
//4.将委托和方法关联
Hc.PrintHandle = Pc.Print;


Hc.PrintHello();
}

6.最后希望可以帮助大家对委托有一个基本的认识

 

上一篇: 甲骨文的云计算转型成功 市值首超2000亿美元 下一篇: 没有下一篇了!
发表评论
用户名: 匿名