C#学习笔记 - 接口
接口是什么
接口就是指定一组函数成员,而不实现他们的引用类型。(感觉比抽象类还抽象,有点像完全没有普通函数和数据的抽象类)
interface ICatchMice
{
void CatchMice();//默认public,但不能加任何访问修饰符
}
只能用来被实现(就像抽象类只能用来被继承)
Cat : ICatchMice//语法很像继承
{
public void CatchMice(){...}//必须有实现
}
接口也是一种引用类型
Cat c = new Cat();
ICatchMice ic = (ICatchMice)c;
c.CatchMice();
ic.CatchMice();
实现多个接口
Cat : Pet, ICatchMice, IClimbTree //第一个必须是他的基类
{
public void CatchRat(){...}
public void IClimbTree(){...}
...
}
----
接口 关键字 interface,一般用I开头,接口就是制定一组函数成员,而不实现他们的引用类型(默认public,但不能加任何访问修饰符),只能用来被实现,实现时要加访问修饰符
通过对象调用,可以调用自身有的函数;通过接口调用,只能调用接口所对应的函数
一个类可以实现多个接口
接口标示着当前这个类有接口所声明的行为、方法、能力
----
接口是引用类型,接口作用应该是抽象重用。如果某个类实现某个接口,那另外的类如果要用该方法,只需要调用该接口就可以了。例如有个抓老鼠接口,然后猫类中实现了,那么狗类就可以直接使用该接口。但顺序必须是排在猫类后面,因为抓老鼠是猫类实现的。