1 实现类必须对接口的所有成员进行实现,例如上例中的weight和height属性都要实现。
2 接口不能包括变量成员,只能是属性、事件、方法、索引器(上述例子只有两个属性)
3 实现接口的类必须严格按照接口的定义来进行实现
4 实现接口可以隐式和显式来实现
例如:
interface IControl //接口1
{
void Paint();
}
interface ISurface //接口 2
{
void Paint();
}
//注意:上述两个接口都包含方法Paint(),下面实现类中必须进行显式实现
class SampleClass : IControl, ISurface
{
Void Paint()//如此隐式实现肯定容易出现歧义
void IControl.Paint() //显式实现
{
System.Console.WriteLine("IControl.Paint");
}
void ISurface.Paint()//显式实现
{
System.Console.WriteLine("ISurface.Paint");
}
}
5 接口中的成员显式实现后,必须通过接口调用,而不能直接通过类进行调用
上述事例中 SampleClass sp = new SampleClass();
Sp.Paint()这样是错误的,必须IControl I1 = (IControl) sp;然后I1. Paint();
6 一个接口可以由几个类进行实现,也可以只有一个类进行实现,也可以叫做接口的多态
7 一个实现类可以同时实现几个接口,也可以实现唯一一个接口
8 已有实现类的接口定义后不能随意更改,否则容易打乱实现类。