【发布时间】:2012-03-03 20:31:52
【问题描述】:
有两种方法可以在抽象类或接口之间进行选择。 Microsoft 解决方案和 Oracle 解决方案:
微软,设计指南:
请使用抽象(Visual Basic 中的 MustInherit)类而不是接口来将契约与实现分离。
http://msdn.microsoft.com/en-us/library/ms229013.aspx
Oracle,Java 教程:
如果抽象类只包含抽象方法声明,则应将其声明为接口。
http://docs.oracle.com/javase/tutorial/java/IandI/abstract.html
我的问题是哪种方式是正确的?微软或甲骨文解决方案?请注意,我认为在抽象类或接口之间进行选择不应取决于编程语言(Java 或 C#)。
【问题讨论】:
标签: c# java .net interface abstract-class