【问题标题】:How can i choose Abstract class or Interface..? [duplicate]我如何选择抽象类或接口..? [复制]
【发布时间】:2011-03-28 13:01:38
【问题描述】:

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

我们如何决定何时必须使用接口以及何时使用抽象类..??

任何想法..??

提前致谢!

【问题讨论】:

标签: c# interface abstract-class


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    如果您计划对部分方法和属性进行相同的实现,则使用抽象类,如果您只想在所有类中保存相同的成员,但对所有类使用不同的实现,则使用接口。

    换句话说,如果您的某些派生类方法在每个派生类中应该完全相同,则使用接口,否则使用接口。

    【讨论】:

      【解决方案3】:

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

      使用抽象类。

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

      使用接口。

      【讨论】:

        【解决方案4】:

        CodeProject 上查看这篇有趣的文章,它将帮助您了解接口和抽象类之间的区别。

        【讨论】:

        • 好像代码被删除了。该代码有实时版本吗?
        猜你喜欢
        • 2012-08-07
        • 2013-03-08
        • 2011-10-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-06
        • 1970-01-01
        • 2010-09-20
        相关资源
        最近更新 更多