日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

事件和委托

系統(tǒng) 1767 0
基于事件的編程是.NET Framework的基石
.NET Framework中的事件機(jī)制使用了委托(回調(diào))
事件作為一種常用的方法來解除事件源對(duì)象(生成事件的對(duì)象)與事件接收器對(duì)象(接受事件通知的對(duì)象)之間的耦合。

委托 類似于應(yīng)用程序中指向?qū)ο笾蟹椒ǖ闹羔?
3個(gè)步驟:
1 聲明委托類型
2 創(chuàng)建委托對(duì)象,并將該對(duì)象綁定指定方法上
3 使用委托對(duì)象來調(diào)用方法

.NET Framework支持兩種類型的委托
單播委托:允許一個(gè)對(duì)象上調(diào)用一個(gè)方法
多播委托:允許在不同對(duì)象上調(diào)用一系列方法,維護(hù)一個(gè)調(diào)用對(duì)象

使用多播委托的步驟:
1 定義一個(gè)委托類型
2 編寫具有相同簽名方法作為委托
3 創(chuàng)建委托對(duì)象,將它綁定到需要通過委托調(diào)用的第一個(gè)方法
4 創(chuàng)建另一個(gè)委托對(duì)象,綁定到下一個(gè)需要調(diào)用的方法
5 System.Delegate類的Combine方法,合并成一個(gè)集成的多播委托

異步委托 可以在后臺(tái)線程中調(diào)用的方法
調(diào)用委托實(shí)例三種方式:
1 同步調(diào)用,等待方法執(zhí)行完畢,最常見
2 異步調(diào)用,等待方法執(zhí)行完畢, EndInvoke(),但在方法執(zhí)行完畢之前調(diào)用
3 異步調(diào)用,注冊(cè)一個(gè)回調(diào)方法,一旦執(zhí)行完畢,給出通知

事件的實(shí)現(xiàn) 使用委托存儲(chǔ)訂閱的事件處理方法,典型的Observer設(shè)計(jì)模式的一種實(shí)現(xiàn)
每個(gè)事件,必須指定下面兩項(xiàng)內(nèi)容:事件名,事件的簽名(參數(shù)列表)

System.EventHandler 一個(gè)內(nèi)置的委托
事件不能有返回類型,只能從事件源對(duì)象到事件接收方對(duì)象的單向信息流

靜態(tài)事件 較少見,相對(duì)于一般事件

定義自己注冊(cè)的方法
大多數(shù)情況下不需要定義定制的注冊(cè)方法,但這種技術(shù)可以使代碼最簡(jiǎn)潔和快速。
Framework中,大多數(shù)控件都使用定制的注冊(cè)方法。

基類和子類不能引用同一個(gè)委托
繼承和多態(tài)性 所有的面向?qū)ο笳Z言都支持,多態(tài)性由繼承支持,把一種類型的對(duì)象視作另一種類型的實(shí)例的多態(tài)性

基類定義為virtual,派生類就可以重寫基類的操作
標(biāo)記為非虛的方法不能重寫
操作聲明為virtual,可以重寫該實(shí)現(xiàn)
操作聲明為abstract,必須重寫該實(shí)現(xiàn)

類 繼承自System.Object
結(jié)構(gòu) 繼承自System.ValueType,繼承自System.Object轉(zhuǎn)換成它實(shí)現(xiàn)的接口類型,對(duì)于引用類型代替類型要小心,不能調(diào)用接口不支持的任何對(duì)象。

事件和委托


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦?。。?/p>

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 青海省| 兰坪| 安宁市| 庆阳市| 那坡县| 克什克腾旗| 准格尔旗| 融水| 高要市| 肇东市| 内江市| 郯城县| 犍为县| 江华| 长丰县| 福贡县| 景东| 磐石市| 三门峡市| 石嘴山市| 连城县| 龙口市| 随州市| 黎川县| 阳朔县| 自贡市| 望都县| 玉屏| 阿坝| 独山县| 郸城县| 锡林浩特市| 河池市| 安徽省| 和静县| 德清县| 鹿泉市| 郧西县| 汉沽区| 微山县| 三都|