C_Sharp 板


LINE

※ 引述《ching99 (只要食物不要胖)》之铭言: : 我用生活化的假设好了 : 假如我有两个class 一个是 "妈妈炒菜" : 一个是"儿子看电视" 然後有一支电话 : 情境是这样 妈妈知道外婆会打电话来 : 所以一边炒菜一边不停的去询问儿子说"电话来了没" : 然後直到儿子接到电话然後 : 确认是外婆而不是隔壁老王才通知妈妈说 : "妈~外婆的电话" : 这是一般polling的机制 : 但是 我想要这个儿子主动点 : 外婆打过来就直接通知妈妈而不是妈妈去问儿子 : 请问我要用什麽方法? : public void MomCook() : { : answerPhone(); : } : bool answerPhone() : { : if( GrandMon()) : return true; : return false; : } 你的class跟你的叙述不合,两种方式让你自己选 一、正常用法 1. mother class public void Mother() { public void Cook() { Console.WriteLine("妈妈煮菜"); } public void SayHello() { Console.WriteLine("妈妈:Hello"); } } 2. son class public void Son() { public event EventHandler GotPhoneCall; public void WatchTV() { Console.WriteLien("儿子看电视"); } public void GetPhoneCall() { Console.WriteLine("儿子接到电话"); if (this.GotPhoneCall != null) { this.GotPhoneCall(this, null); } } } 3. phone class public void Phone() { event EventHandler Rang; public void Ring() { Console.WriteLine("电话响了"); if(this.Rang != null) { this.Rang(this, null); } } } 4. client Phone phone = new Phone(); Son son = new Son(); Mother mother = new Mother(); phone.Rang += new EventHandler((s, e) => son.GetPhoneCall()); son.GotPhoneCall += new EventHandler((s, e) => mother.SayHello()); phone.Ring(); 二、 懒得打了,我用说的, 将电话的事件注册到儿子建构式, 将儿子事件注册到妈妈建构式, 呼叫就直接这样写 Mother mother = new Mother(); mother.son.phone.Ring(); 效果一样,但是意义不一样, 要注意这点, 然後接下来应该就会有人找碴说我误导新手, 所以第二段不打了,可以当作练习自己打出来看看。 -- 上帝并不会掷骰子, 程式并不会出错,会出错的只有人。 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 60.249.117.38
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1423192902.A.DDC.html ※ 编辑: StupidGaGa (60.249.117.38), 02/06/2015 11:23:20
1F:推 ching99: 谢谢大大 02/26 12:14







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP