using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 接口实验
{
public interface IBark
{
void Bark(); //定义接口
}
public class dog : IBark
{
public void Bark()
{
Console.WriteLine("旺财:汪汪!"); //该类或结构为接口定义的成员提供实现
}
//当类或结构继承接口时,意味着该类或结构为该接口定义的所有成员提供实现。
}
public class cat : IBark
{
public void Bark()
{
Console.WriteLine("猫咪:喵喵!"); //该类或结构为接口定义的成员提供实现
}
}
class Program
{
static void Main(string[] args)
{
dog 旺财 = new dog();
旺财.Bark();
cat 猫咪 = new cat();
猫咪.Bark();
Console.ReadLine();
}
}
}
我的理解:接口是让所有继承自它的类都共有的方法,本例中cat和dog都有Bark这个方法,
但具体的实现是在类中完成的。打个可能不大恰当的比方usb是一种接口,我们让硬盘和优盘都继承自USB,所以硬盘和优盘都有了usb的接口。
这样看来,接口好像是一种标准了。接口就好像是关系型数据库中的一对多表,一个接口对应多个接口方法.错误之处,请大家指出。