在概念上C#接口类似于COM 接口,但它们是不同的,员的执行方式。一般情况下,接口中只能包含方法、属性、索引器和事件的声明。与COM 接口不同, C#接口不代表任何类型的二进制标准。
public interface IDisposable
{
void DisposeO;
}
声明接口在语法上与声明抽象类完全相同,但不允许提供接口中任何成员的执行方式。一般情况下,接口中只能包含方法、属性、索引器和事件的声明。
在接口定义中还不允许声明成员上的修饰符。接口成员总是公共的,不能声明为虚拟或静态
class SomeClass : lDisposable
{
// this c1ass MUST contain an implementation ofthe
// IDisposable.DisposeO method, otherwise
// you get a compilation error
public void DisposeO
{
// implementation ofDispose() method
}
// rest of class
}
接口名称传统上以字母I 开头,以便知道这是一个接口。
接口仅表示其成员的存在性,类负责确定这些成员是虚拟还是抽象的(但只有在类本身是抽象的,这些成员才能是抽象的)。在本例中,接口方法不必是虚拟的。
C#支持多接口继承和单一实现继承,还提供了许多有效的语法结构,以使代码更健壮,例如override 关键字,它表示函数应在何时重写基类函数,new 关键字表示函数在何时隐藏基类函数,构造函数初始化器的硬性规则可以确保构造函数以健壮的方式进行交互操作。

浙公网安备 33010602011771号