1.委托(“调用方法”)
1.格式:
1.声明委托事件:修饰符 delegate 返回类型 委托类型名称(参数表)(返回类型和参数表所用的格式要统一)
public delegate float EventDele(float x, float y);
2.实例化另外一个类:_Math math = new _Math();(主要用于下面的类的方法调用)
3.实例化委托:1.普通委托(特点:方法的名字)(委托已经将另外的类的方法进行了调用)
EventDele eventDele = new EventDele(math.Add);
2.匿名委托(特点:关键字(参数){方法体})
EventDele eventDele1 = delegate (float x1, float y1) { return x1 * y1; };
3.λ表达式
EventDele eventDele2 = (float x1, float y1) => { return x1 * y1; };
(其中2和3本质是相同的,写法不同)
2.多重委托:实例化的委托 +=;-= new 声明的委托 (实例化的另外的类的名字.它下面的方法)
SendEve.Event += new EventHandler(ConsoleData);
3.方法回调: 对于1.的普通委托,要调用另外的方法的话,就要回调相应的参数
1.格式:实例化的委托 (参数)
public delegate void Event();
public float Add(float x, float y)
{
Event min = new Event(output);
min(x,y);
}
public void output(float x,float y)
{
Console.WriteLine("进入下一步");
}
2.事件
1.声明事件委托类型(1.它可在命名空间下创建,也可以在类下创建 2.事件的想法 )
格式:修饰符(只有public和internal两种,默认值是internal) delegate void 事件委托类型名称(触发事件对象的名称,事件参数)
2. 创建事件处理方法(1.消息的传递)
3.声明一个事件(1.关键字event 2.事件是类的成员 3.实例化去执行事件的想法)
格式:修饰符 event 事件委托类型名称 事件名称
4. 事件的取消和订阅 (1.实践的出发条件 2.+=;-= 3.同理与多重委托)
3.字典
1.格式:键值<key.name,key内容>
public Dictionary<string,infor>dic = new Dictionary<string,infor> ();
public void AddDic()
{
for()
}