事件類似於異常,因為它們都是由物件引發。
訂閱乙個事件的含義是提供**,在事件發生時執行這些**,它們稱為事件處理程式。
事件處理程式本身都是簡單的函式。對事件處理函式的惟一限制是它必須匹配於事件所要求的簽名(返回型別和引數)。這個簽名是事件定義的一部分,由乙個委託指定。
要處理事件,需要提供乙個事件處理函式(該函式的簽名應匹配於事件指定的委託簽名。),訂閱事件。
自定義事件:
定義事件所用的委託簽名
用定義的委託宣告乙個事件
在物件內部引發事件。
客戶程式:
定義事件處理函式(此函式同事件所指定的委託簽名一致)
訂閱事件。
簡單理解:
事件-》委託-》方法
定義時:委託定義:public delegate 方法的簽名(object sender,eventargs e)
事件定義:public event 委託 事件名;
委託=方法,事件=委託,那麼事件=方法。
事件原理:把物件外部的方法傳入物件內部,並且呼叫,實質就是要實現乙個物件在自己的內部呼叫乙個外部宣告的方法。
總結:事件就是實現在物件內部呼叫物件外的方法的過程。方法的呼叫放在物件內部,何時呼叫由物件自己決定。而方法體的具體實現放在物件外部,物件本身不需要關心這個。
對事件與委託的理解 2 引發事件
事件功能是由三個互相聯絡的元素提供的 提供事件資料的類 事件委託和引發事件的類。framework 具有命名與事件相關的類和方法的約定。如果想要您的類引發乙個名為 eventname 的事件,您需要以下元素。framework 類庫或第三方類庫中可能已經定義了事件資料類和事件委託類。在這種情況下,您...
對事務的理解
事務 transaction 是訪問並可能更新資料庫中各種資料項的乙個程式執行單元.事務的四個屬性 原子性atomicity 乙個事務是乙個不可分割的工作單位,事務中包括的諸操作要麼都做,要麼都不做.一致性consistency 事務必須是使資料庫從乙個一致性狀態到另乙個一致性狀態.一致性與原子性是...
對事務的理解
事務 為了實現某個功能而組合在一起的一組sql語句,這組sql語句要麼全執行,要麼全不執行 例 張三要給李四轉100塊錢,那麼如果轉錢成功的話,張三的賬戶會少100,而李四的賬戶會多100 否則張三和李四的賬戶餘額仍保持不變。事務有四大特性 簡稱為acid特性 原子性 atomicity 一致性 c...