C#的接口
参考书籍: 《C#图解教程》
接口这东西呢,跟Java的接口差不多,就是只有抽象的成员,只不过不用写abstract和public。类可以实现多个接口,但只能有一个继承,这和Java也是一样的。
下面是需要注意的东西:
1. 按照惯例,接口名称必须是大写的‘I’(i)开始的。
2. 接口可以由任何访问修饰符,但接口的成员不允许有任何访问修饰符,借口的成员是隐式public的。
3. 也可以将类对象引用转换为接口,类似子类转换成父类。
4. 可以用as运算符判断类对象是否有实现接口。
5. 如果多个接口有相同签名的成员,可以直接实现。
6. 如果要实现多个接口相同签名的成员,用对象转换成接口。
7. 如果显式实现接口成员,就要显示调用。
用派生成员实现接口
这是比较神奇的东西。看代码:
interface IMyInterface
{
void SomeFunction();
}
class MyBassClass
{
public void SomeFunction()
{
Console.WriteLine("Call SomeFunction!");
}
}
class MyDerived : MyBassClass , IMyInterface
{
}
class Program
{
static void Main()
{
MyDerived d = new MyDerived();
d.SomeFunction();
}
}
运行结果:Call SomeFunction!