标签:
委托是一个类,它定义了方法的类型
委托的定义: 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设计模式简介
利用事件可以存放多个方法,来实现一个对象变化时,告诉另外对象我变化了
标签:
原文地址:http://www.cnblogs.com/huangf714/p/5876087.html