实现接口(interface)只是提供方法的骨架。如果我们知道该方法的确切签名行,在这种情况下
实现接口(interface)的要求是什么?
这是已经实现接口(interface)的情况
interface IMy
{
void X();
}
public class My:IMy
{
public void X()
{
Console.WriteLine("Interface is implemented");
}
}
这是Interface没有实现的情况
public class My
{
public void X()
{
Console.WriteLine("No Interface is implemented ");
}
}
My obj = new My();
obj.X();
这两种方法都会产生相同的结果。
实现接口(interface)的要求是什么?
最佳答案
接口(interface)的目的是允许您使用两个不同的类就好像它们是相同的类型。这在关注点分离方面非常宝贵。
例如我可以编写一个从 IDataReader 读取数据的方法。我的方法不需要知道(或关心)它是 SqlDataReader、OdbcDataReader 还是 OracleDataReader。
private void ReadData(IDataReader reader)
{
....
}
现在,假设我需要该方法来处理来自非标准数据文件的数据。我可以编写自己的实现 IDataReader 的对象,它知道如何读取该文件,我的方法也不知道也不关心 IDataReader 是如何实现的,只是向它传递了一个实现 IDataReader 的对象。
希望这对您有所帮助。
关于c# - 为什么要实现接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6098242/