生活随笔
收集整理的這篇文章主要介紹了
委托的使用
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1、接口:接口與抽象類一樣,也是表示某種規(guī)則,一旦使用了該規(guī)則,就必須實現(xiàn)相關(guān)的方法。對于C#語言而言,由于只能繼承自一個父類,因此若有多個規(guī)則需要實現(xiàn),則使用接口是個比較好的做法。2、接口的定義interface 接口名{方法聲明;}3、不同接口中若有多個相同名稱的方法,則需要顯式指定接口名,例如:4、接口的使用使用接口也可以實現(xiàn)多態(tài)。代碼如下:class Program{static void Main(
string[] args){//提供三個類,完成工資的計算
List<ICalu> list =
new List<ICalu>
();list.Add(new Boss());list.Add(new Clert());list.Add(new Clert());list.Add(new Customer());foreach (ICalu emp
in list){emp.Calu(); //多態(tài)
}}}class Boss : ICalu{public void Calu(){Console.WriteLine("計算老板工資");}}class Customer : ICalu{public void Calu(){Console.WriteLine("計算客戶工資");}}class Clert : ICalu{public void Calu(){Console.WriteLine("計算職員工資");}}interface ICalu{void Calu();}5、接口應(yīng)用場合舉例6、接口demousing System;using System.Collections.Generic;using System.Linq;
using System.Text;namespace ConsoleApplication1 {class Program { static void Main(
string[] args) { List<IShow> list =
new List<IShow>
(); list.Add(new Map()); list.Add(new Voice()); list.Add(new Video()); list.Add(new ThreeD());foreach(IShow ishow
in list) { ishow.Show(); } } } interface IShow { void Show(); } public class Map:IShow { public void Show() { Console.WriteLine("顯示圖片"); } } public class Voice : IShow { public void Show() { Console.WriteLine("播放聲音"); }} public class Video : IShow { public void Show() { Console.WriteLine("顯示視頻"); } } public class ThreeD : IShow { public void Show() { Console.WriteLine("3D交互"); } }} ?
using System;
using System.Collections.Generic;
using System.Linq; using System.Text;
namespace ConsoleApplication2 {
??? public delegate void Mydel();?
?? class Program???? {??????
? static void Main(string[] args)???????? {???
???????? Hospital h = new Hospital();??????
????? People LaoWang = new People();?
?????????? LaoWang.OnEatTooMuch += new Mydel(h.Check);???
???????? LaoWang.Eat(10);???????? }??
????????????? }
?
??? class People???? {???
???? public event Mydel OnEatTooMuch;???
???? public void Eat(int i)???????? {??????
????? if(i<3)???????????? {?
?????????????? Console.WriteLine("吃的太少");???????????? }?
?????????? else if(i==3)???????????? {???????????????? Console.WriteLine("吃的正好");???????????? }??
????????? else if (i <=5)???????????? {???????????????? Console.WriteLine("吃的多了點");???????????? }???
???????? else???????????? {???????????????? if(OnEatTooMuch!=null)???????
???????? {???
???????????????? OnEatTooMuch();???????????????? }??
????????? }????
??? }???
}
?
??? class Hospital???? {??
????? public void Check()???????? {???????????? Console.WriteLine("治療");???????? }?
?
?? }
?
}
轉(zhuǎn)載于:https://www.cnblogs.com/webzhoulin/p/3558160.html
總結(jié)
以上是生活随笔為你收集整理的委托的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。