接口定义了所有类继承接口时应遵循的语法合同。接口定义了语法合同 “是什么” 部分,派生类定义了语法合同 “怎么做” 部分。
接口定义了属性、方法和事件,这些都是接口的成员。接口只包含了成员的声明。成员的定义是派生类的责任。接口提供了派生类应遵循的标准结构。
接口使得实现接口的类或结构在形式上保持一致。
抽象类在某种程度上与接口类似,但是,它们大多只是用在当只有少数方法由基类声明由派生类实现时。
定义
定义接口的方式与声明类的方式相似,使用 interface 关键字
- 该例指定了一个公共接口 Myinterface
- 接口可定义为 public 或 internal,但不可定义为 abstract 或 sealed
使用
在使用时,和继承的使用方法一致,但在类继承和接口均实现时,
需遵循继承在前,接口在后的规则,如:
- 和基类不同,C#中一个类可以实现多接口