微软不会把节外生枝的东西推出到市场上,哪么接下来我们就来看看接口的妙处在那里。
我们先定义一个接口
public Interface IBase { void ClassPrind(string s); }
再定义一个类继续于IBase接口,而且完成要领
public class DogClass :IBase { public void ClassPrind(string s) { Console.WriteLine(s); } }
末了我们在Main内里挪用他
class ClassMain { statric void Main(string []args) { IBase base=new DogClass(); base.ClassPrind("小狗"); } }
输出效果
小狗
单从上面的代码中看起确切节外生枝,我们只需实例化DogClass类在去挪用ClassPrind要领就好了,没必要多定义一个接口。然则假如我们要再写多一个CatClass类,类里也一样要传入一个参数输出的要领呢?不错我们只需写多一个类,类里写多一个要领就行快的很;但我们在新写的类中的要领名可能会不一样,也就是说我们要多一个要领;这还不算什么,假如这个类和要领你们项目经理是叫他人写的话,你将不晓得这个要领,我们运用起来就不方便了。但假如我们运用接口就差别了,虽然也照样要写多一个类和一个要领;但我们只需把这个类继续于接口,再完成他。哪么不管是谁去新增这个类,我们都能正确的找到他,运用他。
我们来加上CatClass这个类
public class CatClass :IBase { public void ClassPrind(string s) { Console.WriteLine(s); } }
再看看挪用和输出
class ClassMain { statric void Main(string []args) { IBase base=new DogClass(); base.ClassPrind("小狗"); IBase base=new CatClass(); base.ClassPrind("小猫"); } }
输出效果
小狗
小猫
从挪用输出中我们很明显的看出我们只需改个类名、改个参数挪用的效果就是别一个类中的要领,我们基础就不必去记他人写的要领名是什么,也不必写这个类的人通知我们这个类是写来干吗的。如许我们不管是在团队项目中,照样在个人项目里都很轻易的扩大、大大提高了工作效率,我们也不必记着哪么多的东西,何乐而不为呢。
以上就是引见C#中的接口的细致内容,更多请关注ki4网别的相干文章!