事件和委托的小案例
来源:互联网 发布:章燎原的学历知乎 编辑:程序博客网 时间:2024/04/30 10:18
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 事件
{
//声明委托
public delegate void GradedDelegate(int i,string n,double s);
public delegate void GradedDelegate2(int i, string n,double s, GradedDelegate s2);
class Student
{
//声明事件
public event GradedDelegate2 GradeEvent;
public string name;
public int ID;
public double score;
public void GetMessage(int id,string name,double score)
{
ID = id;
this.score = score;
this.name = name;
}
public void Notify()
{
if (GradeEvent != null)
{
Console.WriteLine("开始打分");
GradeEvent(ID, name, score,GetMessage);
}
}
}
class Teacher
{
public void SetScore(int i, string name, double s, GradedDelegate SetMessage)
{
Console.WriteLine("输入学生的学号");
Console.WriteLine("输入学生的姓名");
Console.WriteLine("输入学生的分数");
i=Convert.ToInt32(Console.ReadLine());
name = Convert.ToString(Console.ReadLine());
s = Convert.ToDouble(Console.ReadLine());
SetMessage(i, name, s);
}
}
class Program
{
static void Main(string[] args)
{
Student stu = new Student();
Teacher tea = new Teacher();
//注册事件
stu.GradeEvent+=new GradedDelegate2(tea.SetScore);
stu.Notify();
Console.WriteLine("学生的学号是:{0}/n学生的姓名为:{1}/n学生的成绩为:{2}", stu.ID, stu.name, stu.score);
Console.ReadLine();
}
}
}
///////////////////////////////////////////////////////
- 事件和委托的小案例
- 多播委托与事件的案例
- C# 事件委托案例
- 事件委托案例
- VB的委托和事件
- c#的委托和事件
- 委托和事件 的 区别
- 委托和事件的区别
- 委托和事件的区别
- 事件和委托的区别
- 委托和事件的区别
- 委托和事件的区别
- c#的委托和事件
- 委托和事件的关系
- c#的委托和事件
- 委托和事件的区别
- 委托和事件的使用
- 委托和事件的区别
- 如何提取PDF内容?
- NFS 服务学习笔记
- JSP乱码处理大全
- 无题
- 聊天不用找人 把QQ好友安置到桌面
- 事件和委托的小案例
- Cakephp containable behavior
- 一个人的生活
- 谁愚弄了中国人
- 让opencv读取tif图象
- DFB发射器件功率要求理论计算
- 10 使用性能视图调优
- test write by wlw
- 类