首页 > 其他 > 详细

事件,抢答题

时间:2015-05-19 18:40:33      阅读:278      评论:0      收藏:0      [点我收藏+]

//定义委托

public delegate void QuestionEventHandler(string s);

//定义发布者

public class Publisher

{

public string Question = "太平洋的中间是什么?";

public event QuestionEventHandler QuestionEvent;//事件

public void Ask()

{

Console.WriteLine("提问"+Question);

//判断事件是否被注册

if(QuestionEvent != null)

{

QuestionEvent(Question);

}

}

}

//订阅者1

public class SubscriberA

{

public void OnQuestionAsked(string question)

{//判断条件

if(question == "太平洋的中间是什么?");

Console.WriteLine("甲:平");

else

Console.WriteLine("不知道");

}

}

//订阅者2

public class SubscriberB

{

public void OnQuestionAsked(string question)

{//判断

if(question == "太平洋的中间是什么?");

Console.WriteLine("乙:水");

else

Console.WriteLine("不知道");

}

}

//Main方法调用

class Program

{

static void Main(string[] args)

{

Publisher pub = new Publisher();

SubscriberA a = new SubscriberA();

SubscriberB b = new SubscriberB();

//注册事件

pub.QuestionEvent += a.OnQuestionAsked;

pub.QuestionEvent += b.OnQuestionAsked;

pub.Ask();

}

}

事件,抢答题

原文:http://www.cnblogs.com/gsj2ronger918/p/4515058.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!