接口可以有静态成员、嵌套类型、抽象、虚拟成员、属性和事件。实现接口的任何类都必须提供接口中所声明的抽象成员的定义。接口可以要求任何实现类必须实现一个或多个其他接口。对接口有以下限制: 接口可以用任何可访问性来声明,但接口成员必须全都具有公共可访问性。 
不能向成员或接口自身附加安全性权限。 
接口可以定义类构造函数,但不能定义实例构造函数。 
每种语言都必须为需要成员的接口映射一个实现提供规则,因为不只一个接口可以用相同的签名声明成员,且这些成员可以有单独的实现。

解决方案 »

  1.   

    举个简单的例子:
    你做一个CAD,里面有许多种图形,如ObjCircle,ObjTriangle,ObjRect,ObjPolygon,而且以后还可能扩展其它图形,但这些图形元素都有各自的Draw,SetPosition等函数,你可以先编写一个接口
    interface IObj

    Draw(...);
    SetPosition(x,y,z...);
    }
    然后每有一个新图形就在IObj派生一个类,创建时,只要IObj obj=new YourObj();
    把obj加入到一个集合中,以后要画所有的图形时循环一次分别调用它们的Draw就可以了。
      

  2.   

    接口是对类的规划,类是对接口的实现;接口的一个用处是可以实现多重继承;因为类是单重继承的,实际中:
    接口对于软件规划人员很有用,软件规划人员可以用接口来对一个事情规划,但软件规划人员描述一个大概
    然后由程序员用类去细化, 具体化软件规划人员写的接口。