接口 - 为什么使用它们?

时间:2011-02-15 00:08:44

标签: c#

  

可能重复:
  How will I know when to create an interface?

大家好,

我猜这听起来有点厚,但我正在努力理解使用接口的原因。人们一直说他们是课堂上的“合同”。但是,为什么要使用它们?如果我是一个开发人员,在一个应用程序上,我知道没有人会工作(我知道 - 不是一个常见的例子,但我只是想了解),我会使用接口吗?他们似乎只是重复工作。似乎我定义了一个类必须实现的内容,然后去实现它。我这样做了两次 - 为什么?

请注意:我不是说他们没用......我只是想找出原因,在我工作的项目中,他们定义了一个IClass,然后在此基础上,定义了哪个类他们用...

很抱歉,如果这是非常基本的...只是希望有人可以帮助我。

2 个答案:

答案 0 :(得分:3)

我使用接口,因为它使我的代码更加模块化。将接口与控件容器(http://code.google.com/p/autofac/)的反转结合使用,可以轻松交换接口的各种实现。

此外,界面更容易进行单元测试。

这些只是几个很好的理由;真的,还有更多。但这些足以让我想要使用接口。

答案 1 :(得分:1)

如果你想拥有几个都支持同一组方法的类。例如,您可能有一个存储数据的类,调用它们的代码不关心它使用哪个类的详细信息。他们必须实现方法存储和获取。在这种情况下,您可以使用具有这两种方法的接口,也可以使用公共基类。

为什么没有comon基类。

  1. 你只能有一个共同的基类,而你还需要其他的基类
  2. 他们真的很不一样,有一个共同的基类感觉被迫