C 之事件及event關鍵字存在的意義

2022-04-15 13:26:46 字數 1283 閱讀 6294

總結:event關鍵字的作用,用於不公開發布器中委託物件例項,對事件委託物件進行保護,禁止外部呼叫。

1、c#事件舉例說明

1

//事件及event關鍵字存在的意義

2class

program318

}192021

//事件訂閱器類,提供事件處理程式的物件,就是事件發生了要做什麼事情。

22public

class

subscribevent

2329

30//

31public

void

clickwechaticon()

3235}36

37//

事件發布器類,用於發布事件,包含事件和委託定義的物件。

38//

定義mouseleftbutton類,模擬滑鼠左鍵物件

39public

class

mouseleftbutton

4052

else

5356}57

58public

mouseleftbutton()

6162 }

2、去掉event關鍵字不要,程式也能正常執行。但是,這是發布器類的委託失去了保護,可以觸發任何可能的操作。

1

//事件及even關鍵字存在的意義

2class

program315

}161718

//事件訂閱器類,提供事件處理程式的物件,就是事件發生了要做什麼事情。

19public

class

subscribevent

2026

27//

28public

void

clickwechaticon()

2932}33

34//

事件發布器類,用於發布事件,包含事件和委託定義的物件。

35//

定義mouseleftbutton類,模擬滑鼠左鍵物件

36public

class

mouseleftbutton

3749

else

5053}54

55public

mouseleftbutton()

5859 }

3、加上關鍵字event後,會發現以下錯誤

event關鍵字存在的必要

有了 為什麼還要事件?是否 和事件一定要 雙生 事件的作用是 縮小客戶端使用 的許可權 只能增建 刪除註冊。而不能invoke或者重置 如果採用私有化 並且自定義訪問方法也可以做到這點。真是這個機制太常用了,增加乙個event關鍵字可以少打一點 如果客戶端需要再更加大的範圍使用類的 則不用事件即可。...

event關鍵字存在的必要

有了 為什麼還要事件?是否 和事件一定要 雙生 事件的作用是 縮小客戶端使用 的許可權 只能增建 刪除註冊。而不能invoke或者重置 如果採用私有化 並且自定義訪問方法也可以做到這點。真是這個機制太常用了,增加乙個event關鍵字可以少打一點 如果客戶端需要再更加大的範圍使用類的 則不用事件即可。...

C 學習筆記之 事件 Event

發布器 publisher 是乙個包含事件和委託定義的物件。事件和委託之間的聯絡也定義在這個物件中。發布器 publisher 類的物件呼叫這個事件,並通知其他的物件。訂閱器 subscriber 是乙個接受事件並提供事件處理程式的物件。在發布器 publisher 類中的委託呼叫訂閱器 subsc...