委托和事件

Posted 芜明-追星

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了委托和事件相关的知识,希望对你有一定的参考价值。

委托是一个类,它定义了方法的类型
委托的定义: public delegate void Hello();

方法中使用委托:
public void GreetHello(Hello hello){
hello(); //调用委托中的方法
}

将方法绑定到委托上面
Hello hello;
hello = 方法1;

创建委托的时候,绑定一个方法
Hello hello = new Hello(方法);


事件的定义: public event Hello hello; 比委托多了一个event

//定义一个委托
public delegate void GreetPeople;

public class Demo {
//定义一个事件
public event GreetPeople greet;
//方法中调用事件里面的全部方法,如果事件没有初始化要报错
public void Greet() {
//调用事件的全部方法
greet();
}
}

public class Test{
public static void Main(String [] args) {
Demo demo = new Demo();
demo. += 方法;
demo.Greet();
}
}

事件有两种加载方法的方式:
this.事件 = 方法名
this.事件 = new 委托(方法名);

Observer设计模式简介
利用事件可以存放多个方法,来实现一个对象变化时,告诉另外对象我变化了









以上是关于委托和事件的主要内容,如果未能解决你的问题,请参考以下文章

第12章 委托与事件

委托和事件

C# 中的委托和事件

unity的C#学习——委托事件和匿名方法

C#里事件和委托有啥区别啊??

委托与事件