我如何选择抽象类或接口..?

时间:2010-08-11 17:56:02

标签: c# interface abstract-class

  

可能重复:
  Interface vs Base class
  Abstract classes vs Interfaces

我们如何决定何时必须使用Interface和Abstract Class .. ??

任何想法.. ??

提前感谢!

4 个答案:

答案 0 :(得分:3)

您想提供方法的共享实现吗?

使用抽象类。

您是否只想提供一个合同,指明对象必须提供哪些外部功能?

使用界面。

答案 1 :(得分:2)

我的经验法则是:当存在共享代码时使用抽象类,否则使用接口。

答案 2 :(得分:0)

如果您打算使用相同的部分方法和属性实现,那么使用抽象类,如果您只想在所有类中保留相同的成员,但是对所有类都有不同的实现,那么使用interface。 / p>

换句话说,如果某些派生类方法在每个派生类中应该是相同的,请使用interface,否则使用interface。

答案 3 :(得分:0)

看看这篇有趣的文章,它将帮助您理解CodeProject上的接口和抽象类之间的差异。

相关问题