Interface In .Net MVC的实际用途是什么? Interface的优点和缺点是什么?

时间:2015-07-06 06:42:51

标签: c# asp.net-mvc

我没有得到关于Interface的正确答案,我对界面非常困惑,因为我们直接使用对象的类和方法。 为什么我们不必在类中创建接口和继承?

1 个答案:

答案 0 :(得分:3)

接口是一种功能强大的编程工具,因为它们允许您将对象的定义与其实现分开。 这里有一些来自msdn的点:

1)接口更适合于您的应用程序需要许多可能不相关的对象类型来提供某些功能的情况。

2)接口比基类更灵活,因为您可以定义一个可以实现多个接口的实现。

3)在不必从基类继承实现的情况下,接口更好。

4)当您不能使用类继承时,接口很有用。例如,结构不能从类继承,但它们可以实现接口。

例如:假设你有一个程序需要从它的不同部分收集数据。每个部件都没有连接到另一个部件,例如:屏幕,打印机,啤酒机等。每个课程都会推动IDataCollector及其功能,最终你可以在某个经理课上做同样的事情:

foreach (ProgramFeature feature in ProgramFeatures)
{
      if (feature is IDataCollector)
      {
          feature.CollectData();
      }
 }
相关问题