什么是接口:
一个类能同时实现多个接口,并且接口之间可以继承;
在C#语言中,类之间的继承关系仅支持单重继承,而接口就是为了实现多重继承关系而设计的;
接口定义了说有继承接口时应遵循的语法合同。接口定义了语法合同“是什么”部分,派生类定义了语法合同“怎么做”部分。(接口定义了属性、方法和事件,这些都是接口的成员。接口只包含了成员。接口只包含了成员的声明。成员的定义是派生类的责任。接口提供了派生类应遵循的标准结构。)
一、接口名称:通常以I开头的,再加上其它的单词构成。(但以I开头的不一定就是接口哦!)
二、接口成员:
接口中定义的成员与类中定义的成员类似。
接口中定义的成员必须满足以下要求。
接口中的成员不允许使用 public、private、protected、internal 访问修饰符。
接口中的成员不允许使用 static、virtual、abstract、sealed 修饰符。
在接口中不能定义字段。
在接口中定义的方法不能包含方法体。
三、接口的实现
接口的实现是通过继承的方式进行实现。
接口实现需要注意的地方:
1.接口继承接口之后具有父接口的全部成员。
2.类继承接口之后需要实现接口的全部成员方法。否则需要将该类定义为抽象类, 未实现的接口方法定义为抽象方法。
3.继承时基类和接口之间,接口和接口之间以逗号分隔
四、实现接口连接方式有两种:
分别是显式实现连接接口和隐式实现连接接口
显式实现连接接口
显示连接接口需要使用接口名作为方法名的前缀。
注意事项: a.显式实现接口时不需要指定访问修饰符。 b.显式实现的接口在调用时必须使用接口对象。
隐式实现接口
隐式实现接口连接不需要使用接口名作为方法名的前缀,但需要添加访问修饰符public。
五、实现显式接口
今天我即将要实现的是显式接口。
我们首先来创建一个接口
点击接口,然后下面有一个名称可以更改(但要以I开头)
在接口上定义方法;
interface Interface {
//接口中约定返回值,方法名称,参数列表
void MethodToImplement();
void DoSomething();
}
Program类要调用接口中的方法,需要继承Interface接口;
点击显示可能的修补程序
点击实现接口,在他下面会弹出预览中的代码。
我们还需要把预览中的代码修改一下:
public void MethodToImplement()
{
Console.WriteLine("MethodToImplement() called.");
}
public void DoSomething()
{
Console.WriteLine("DoSomething() called.");
}
光是修复代码还不行,
static void Main(string[] args)
{
Console.WriteLine("123");
}
还需要修改Main方法,如果Main方法不做改变的话;
运行后不会有接口方法结果的输出;
修改Main方法
Main方法中实例化一个Program 类的InTen对象。
再根据InTen点出那两个接口的方法名。
class Program:Interface
{
static void Main(string[] args)
{
Program InTen = new Program();
InTen.MethodToImplement();
InTen.DoSomething();
}
public void MethodToImplement()
{
Console.WriteLine("MethodToImplement() called.");
}
public void DoSomething()
{
Console.WriteLine("DoSomething() called.");
}
}
允行一下就可以输出了;



