委託 三 委託與介面的區別

2021-04-15 00:06:06 字數 756 閱讀 4740

何時使用委託?何時介面?

在以下情況中使用委託:

1.當使用事件設計模式時.

2.當封裝靜態方法可取時.

3.當呼叫方不需要訪問實現該方法的物件中的其他屬性.方法或介面時.

4.需要方便的組合.

5.當類可能需要方法的多個實現時.

在以下情況使用介面:

1.當存在一組可能被呼叫的相關方法時

2.當類只需要方法的單個實現時

3當使用介面的類想要該介面強制轉化為其他介面或者類型別時

/*皮特的故事*/

using system;

using system.collections.generic;

using system.text;

namespace delegate

class worker

public void dowork()}}

class boss : iworkevents

public void workprogressing()

public int workcompleted()

class universe : iworkevents

static int workcompletework()

public int workcompleted()

public void workprogressing()

public void workstarted()

static void main()}}

C 與C 的區別(三) 委託與事件

在c 中沒有c 中的函式指標的概念,但是有委託的概念,功能與函式指標類似。c 中的委託 delegate 類似於 c 或 c 中函式的指標。委託 delegate 是存有對某個方法的引用的一種引用型別變數。引用可在執行時被改變。委託 delegate 特別用於實現事件和 方法。所有的委託 deleg...

乙個插排引發的設計思想 三 委託與事件

乙個插排引發的設計思想 一 觀察者模式 乙個插排引發的設計思想 二 抽象類與介面 乙個插排引發的設計思想 三 委託與事件 待續.前兩篇文章循序漸進的介紹了觀察者模式 抽象類和介面,並分析了抽象類和介面的不同.結尾處有這樣的問題 無論是抽象類還是介面,都是將裝置本身放入了插排的集合中,那麼我們是否可以...

委託與事件的區別

用乙個公司的場景來說明。假如你是乙個公司的老闆,手下有兩名員工 有點少,呵呵 小張和小王。你給了小王乙個這樣的特權 如果小張玩遊戲,你就可以扣小王500元錢。這就是現實中的委託。在寫程式中,程式設計師就是老闆,小張和小王就是兩個物件。小張玩遊戲是乙個方法,小張還有乙個遊戲事件,他玩遊戲激發這個事件。...