微软不会把多此一举的东西推出到市场上,哪么接下来我们就来看看接口的妙处在哪里。
我们先定义一个接口
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#中的接口全部内容,希望文章能够帮你解决介绍C#中的接口所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)