1 C#接口的作用
定义接口,里面包含方法,但是没有方法具体实现的代码,然后在继承该接口的类里面要实现接口的所有方法的代码。
(1)从用户(使用类的用户)的角度来说,如果他知道了某个类是继承于创建的接口,那么他就可以放心大胆的调用接口里的方法,而不管接口中的方法具体是如何实现的。
(2)从设计的角度看,一个项目中用若干个类需要去编写,由于这些类比较复杂,工作量比较大,这样每个类就需要占用一个工作人员进行编写,比如A程序员去写A类,B程序员去写B类。
这两个类本来没什么联系的,可是由于用户需要他们都实现一个关于某个的方法;
这就要对他们进行一种约束,让他们都继承于这个接口。
目的是方便统一管理,另一个是方便调用。
当然,不使用接口一样可以达到目的。只不过这样的话,这种约束就不那么明显。
2 C#中接口的深入浅出
(1)不用接口
class clsVBProgramer
{
public void WriteCode()
{
Console.WriteLine("用VB写程序的程序员");
}
}
class clsDelphiProgramer
{
public void WriteCode()
{
Console.WriteLine("用Delphi写程序的程序员");
}
}
class Program
{
public void WritePrograme(clsVBProgramer programer)//用VB写代码
{
programer.WriteCode();
}
public void WritePrograme(clsDelphiProgramer programer)//重载方法,用Delphi写代码
{
programer.WriteCode();
}
static void Main(string[] args)
{
Program proj = new Program();
//如果需要用VB写代码
clsVBProgramer programer1 = new clsVBProgramer();
proj.WritePrograme(programer1);
//如果需要用Delphi写代码
clsDelphiProgramer programer2 = new clsDelphiProgramer();
proj.WritePrograme(programer2);
}
}
(2)用接口
interface IProgramer
{
void WriteCode();
}
class clsVBProgramer : IProgramer
{
public void WriteCode()
{
Console.WriteLine("用VB写程序的程序员");
}
}
class clsDelphiProgramer : IProgramer
{
public void WriteCode()
{
Console.WriteLine("用Delphi写程序的程序员");
}
}
class Program
{
public void WritePrograme(IProgramer programer)
{
programer.WriteCode();
}
static void Main(string[] args)
{
Program prog = new Program();
IProgramer programer;
programer = new clsVBProgramer();
prog.WritePrograme(programer);
programer = new clsDelphiProgramer();
prog.WritePrograme(programer);
}
}
文章讲述了C#中接口的概念和作用,接口作为抽象定义,提供了方法签名但不包含实现,使得类在继承接口后必须实现接口的所有方法。接口用于确保不同类实现相同方法,方便用户调用和统一管理。示例比较了使用接口前后的代码,展示了接口如何简化和规范多类间的交互,实现多态性。
1201

被折叠的 条评论
为什么被折叠?



