聊一聊C#接口成績 老手速來圍不雅。本站提示廣大學習愛好者:(聊一聊C#接口成績 老手速來圍不雅)文章只能為提供參考,不一定能成為您想要的結果。以下是聊一聊C#接口成績 老手速來圍不雅正文
這段時光的項目有效到接口,開端不是特殊懂得接口,只是單單曉得接口界說異常簡略,乃至認為這個接口只是畫蛇添足(小我開辟的時刻)。如今開端團隊開辟,才發明接口本來是這麼的主要和便捷!
接上去就來談談我這段時光對接口應用的深刻看法,說的對願望年夜家贊,說的有誤的處所願望年夜家多多原諒建議!
READY GO!
接口的界說就不多說了,它有一個很主要的常識點,就是一切繼續這個接口類的都必需完成接口中的界說,說到這個必需,在團隊開辟中,只需我們約定好了接口,那我們的代碼是否是就同一了!!!
這是我認為接口主要的第一點:它便於我們同一項目標劃定,便於團隊代碼的治理!
再來用一個例子解釋:
A公司決議開辟一套植物體系,個中包括許多的植物,公司決議要完成每一個植物的喊叫行動……
說到這裡,我們普通就是各個法式員拿到本身要完成的植物類以後就開端年夜刀闊斧的開干了!!!
X法式員完成狗這個類,他寫一個叫嚷辦法void Han(){……}
Y法式員完成貓這個類,他寫一個叫嚷辦法void Shout(){……}
M法式員完成豬這個類,他寫一個叫嚷辦法 void Shout(string content){……}
………………
好了,如今都完成了各自須要完成的植物,近鄰老王開端來完成百獸齊鳴!!!!&¥%¥*%¥¥%¥一頓粗口爆出!這要怎樣寫?一個個去挪用???
來看看,X法式員英語不太好,也沒有過量的去管,只是寫出植物叫嚷的辦法,Y法式員和M法式員寫的叫嚷辦法稱號是一樣,但M法式員中還要傳遞植物叫嚷的內容!!!!!
近鄰老王如今要讓一切植物都叫一遍就得一個植物一個植物的去挪用辦法……
OK,接上去閉會磋商,近鄰老王界說一個植物接口,一切的植物類都得繼續這個接口,這個接口只界說一個void Shout(); (就不外多的寫器械啦,偷偷懶)
X,Y,M法式員繼續後,X,M立馬就發明有成績,然後開端改了本身手中的類
這時候老王就開端來百獸齊鳴啦!哈哈哈哈哈
接上去貼出代碼年夜家看
接口
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace InterfaceProject { /// <summary> /// 植物接口 /// </summary> interface IAnimal { /// <summary> /// 植物叫嚷 /// </summary> void Shout(); } }
狗
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace InterfaceProject { /// <summary> /// 狗 /// </summary> public class Dog:IAnimal { public void Shout() { Console.WriteLine("汪汪汪"); } } }
貓
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace InterfaceProject { /// <summary> /// 貓 /// </summary> public class Cat:IAnimal { public void Shout() { Console.WriteLine("喵喵喵"); } } }
豬
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace InterfaceProject { /// <summary> /// 豬 /// </summary> public class Pig:IAnimal { public void Shout() { Console.WriteLine("豬怎樣叫來著??豬叫"); } } }
近鄰老王來完成百獸齊鳴(打垮老王這類人物的存在)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace InterfaceProject { class Program { static void Main(string[] args) { //百獸齊鳴(這裡可使用反射來初始化一切繼續IAnimal的一切植物,我就不寫這個了,重要看接口) List<IAnimal> animals = new List<IAnimal>(); IAnimal dog = new Dog(); animals.Add(dog); IAnimal cat = new Cat(); animals.Add(cat); IAnimal pig = new Pig(); animals.Add(pig); //一切植物都叫一遍 for (int i = 0; i < animals.Count; i++) { animals[i].Shout(); } } } }
我對這個接口的粗略看法就說完啦!接口這個器械固然用起來很簡略,但我們照樣要懂得這個接口的感化,願望我的這篇文章可以或許讓更多像我一樣的老手向接口這個器械邁出第一步。