委託本身可以使用賦值 name->委託->englishgreeting、chinesegreeting 觀察者模式
public
class
greetingmanager
}在客戶端,呼叫看上去更簡潔一些:
static
void main(string args)
輸出為:
morning, jimmy zhang
早上好, jimmy zhang
對事件的宣告 實際是 宣告乙個私有的委託變數 不可使用賦值 temperature->事件->makealert、showmsg
using
system;
using system.collections.generic;
using system.text;
namespace delegate
}// 可以供繼承自 heater 的類重寫,以便繼承類拒絕其他物件對它的監視
protected
virtual
void onboiled(boiledeventargs e)
}// 燒水。
public
void boilwater() }}
}// 警報器
public
class
alarm - : ", heater.area, heater.type);
console.writeline("alarm: 嘀嘀嘀,水已經 度了:", e.temperature);
console.writeline();}}
// 顯示器
public
class
display - : ", heater.area, heater.type);
console.writeline("display:水快燒開了,當前溫度:度。", e.temperature);
console.writeline();}}
class
program }}
輸出為:
alarm:china xian - realfire 001:
alarm: 嘀嘀嘀,水已經 96 度了:
alarm:china xian - realfire 001:
alarm: 嘀嘀嘀,水已經 96 度了:
alarm:china xian - realfire 001:
alarm: 嘀嘀嘀,水已經 96 度了:
display:china xian - realfire 001:
display:水快燒開了,當前溫度:96度。
// 省略 ...
委託和事件學習筆記
class program class director 處理玩遊戲者 public void playgamehandler object sender,system.eventargs e class employee set 初始化員工類 public employee 開始玩遊戲了 publ...
學習總結 委託和事件
委託其實是一種型別,是一種定義方法簽名的型別,它支援以new的方式來例項化。委託是使用關鍵字delegate進行定義的,它其實是對方法的包裝和聚集。1.任何與委託簽名匹配的方法都可以分配給委託,實際上是讓這個委託型別繼承了system.multicastdelegate類,system.mutica...
委託和事件的學習
參考 寫的內容 1 委託 它是乙個類,它定義了方法的型別,實現將方法作為引數傳遞給另乙個方法來呼叫,這種將方法動態的賦給引數的方式,可以避免了程式中過多的使用switch或if else 定義委託,它定義了可以代表方法的型別 public delegate void greetingdelegate...