接口和类的比较:
接口类似于纯粹的抽象类
1)(也是最主要的),接口不提供任何实现代码,这些代码是由实现接口提供的.
2)接口不同于类,其所有的成员都被视为公有的.如果试图为接口的成员声明一个不同的作用域限定符将出错.
3)接口只包含方法,属性,事件和索引器(indexer),而不包含数据成员,构造函数和析够函数,也不包含静态成员.
使用接口:
类只能从另一个类派生而来,但类可以实现多个接口,另外,结构不能继承另一个结构或方法,但可以实现接口.
C#中允许实现多个接口提供了多重继承的功能和好处.
为何使用接口:
可以将接口作为一种给结构提供继承特性的途径.另外可以在一个类中实现多个接口,从而获得抽象类无法获得的功能.
使用接口的最大价值之一是,可以给类添加通过其他方法无法实现的特征.如果将同样的特征添加到其他类中,便可以对其具备的功能作出假设,实际上,通过使用类,可以避免做这样的假设.
使用接口而不是类带来的另一个好处是,强制新的类实现接口定义的所有特征.
定义接口 (建议用I打头,以表明他是一个接口,这与大多数程序员的通常做法一致)
interface IName
{
double Area();
double Circumference();
int Sides();
}