今天終於搞懂 .Net 裡面 Delegate在作什麼了
以前就字義上我也不太會能領會背後的意義
現在終於知道大概的原理
其實拿以前學JAVA的術語來說
就是主要是在作 Event Handler(callback)用的
在JAVA中的動作是用註冊(Register)
在 .Net 裡面是用訂閱(subscribe)的
一個是用元件(可能是AWT或是Swing或其它?)所提供的各式各樣addListener method去向一個本身實作 EventListener 介面的型別來註冊(或是反註冊)
而另一個是讓 event 用運算子 +=(-=) 來向 delegate來訂閱(解除訂閱)
兩種語言都有本身提供內建常用的 event 可供使用
當然也可以自訂 event 來使用
反正都是當 event 被觸發時,會去invoke 所訂閱(註冊)的delegate(event hadler)就是了
當然實際上並不是那麼單純
但是先能夠有個大約的了解就應該是個不錯的開始