日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C#支持事件簡單描述

本文向大家介紹C#支持事件,可能好多人還不了解C#支持事件,沒有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會(huì)你更多東西。

安康網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)2013年開創(chuàng)至今到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

這里介紹C#支持事件(這個(gè)特點(diǎn)也是MSVJ所具有的),當(dāng)前很多主流程序語言處理事件的方式各不相同,Delphi采用的是函數(shù)指針(這在Delphi中的術(shù)語是“closure”)、Java用改編類來實(shí)現(xiàn)、VC用WindowsAPI的消息系統(tǒng),而C#則直接使用delegate和event關(guān)鍵字來解決這個(gè)問題。下面讓我們來看一個(gè)例子,例子中會(huì)給大家舉出聲明、調(diào)用和處理事件的全過程。

 
 
 
  1. //首先是指代的聲明,它定義了喚醒某個(gè)函數(shù)的事件信號(hào)  
  2. public delegate void ScoreChangeEventHandler (int newScore, ref bool cancel);  
  3.  
  4. //定義一個(gè)產(chǎn)生事件的類  
  5. public class Game  
  6. {  
  7. // 注意這里使用了event關(guān)鍵字  
  8. public event ScoreChangeEventHandler ScoreChange;  
  9. int score;  
  10. // Score 屬性  
  11. public int Score  
  12. {  
  13. get {  
  14. return score;  
  15. }  
  16. set {  
  17. if (score != value)  
  18. {  
  19. bool cancel = false;  
  20. ScoreChange (value, ref cancel);  
  21. if (! cancel)  
  22. score = value;  
  23. }  
  24. }  
  25. }  
  26.  
  27.  
  28. // 處理事件的類  
  29. public class Referee  
  30. {  
  31. public Referee (Game game)  
  32. {  
  33. // 裁判負(fù)責(zé)調(diào)整比賽中的分?jǐn)?shù)變化  
  34. game.ScoreChange += new ScoreChangeEventHandler (game_ScoreChange);  
  35. }  
  36.  
  37. // 注意這里的函數(shù)是怎樣和ScoreChangeEventHandler的信號(hào)對(duì)上號(hào)的  
  38. private void game_ScoreChange (int newScore, ref bool cancel)  
  39. {  
  40. if (newScore < 100)  
  41. System.Console.WriteLine ("Good Score");  
  42. else  
  43. {  
  44. cancel = true;  
  45. System.Console.WriteLine ("No Score can be that high!");  
  46. }  
  47. }  
  48. }  
  49.  
  50. // 主函數(shù)類,用于測(cè)試上述特性  
  51. public class GameTest  
  52. {  
  53. public static void Main ()  
  54. {  
  55. Game game = new Game ();  
  56. Referee referee = new Referee (game);  
  57. game.Score = 70;  
  58. game.Score = 110;  
  59. }  
  60. }  

在主函數(shù)中,我們創(chuàng)建了一個(gè)game對(duì)象和一個(gè)裁判對(duì)象,然后我們通過改變比賽分?jǐn)?shù),來觀察裁判對(duì)此會(huì)有什么響應(yīng)。以上介紹C#支持事件。

【編輯推薦】

  1. C#線程同步詳細(xì)分析
  2. C#探討木馬程序淺談
  3. C# Pop3Connection類簡介
  4. C#數(shù)據(jù)類型簡單介紹
  5. C#計(jì)算素?cái)?shù)序列淺談

網(wǎng)頁標(biāo)題:C#支持事件簡單描述
鏈接地址:http://www.dlmjj.cn/article/cceessc.html