【发布时间】:2012-05-26 21:08:51
【问题描述】:
可能重复:
Why to use Interfaces ? Multiple Inheritance vs Interfaces ? Benefits of Interfaces?
在哪些编程情况下多重继承优于接口?
【问题讨论】:
-
优势取决于上下文。给定情况 A MI 具有优势,而在情况 B 接口是优势。针对具体情况使用适当的技术。如果没有更多上下文,就无法按要求回答。
可能重复:
Why to use Interfaces ? Multiple Inheritance vs Interfaces ? Benefits of Interfaces?
在哪些编程情况下多重继承优于接口?
【问题讨论】:
当您需要来自两个不同类的共同行为时。接口只携带“方法签名”,而类携带实际行为。多重继承大大有助于减少样板代码。
我不再是 C++ 程序员(30 公斤前我是)。我从 C++ 到 Java 再到 Scala ......在那里引入了特征。他们为多重继承带来了新的曙光(即使对于那些认为这是魔鬼发明的人)。
【讨论】:
很短,到骨子里:
接口:实现多个接口以支持不同的“合同”。
多重继承:从现成的类继承以具有该类的现成行为。
顺便说一句,这两者在你所问的方面是不可比的......
【讨论】:
优势对我来说并不完全清楚。 What is the exact problem with multiple inheritance?
好处
我们已经展示了多重继承的示例,表明当您可以将对象特征分离为不重叠的集合时,它可以具有优势。然后,多重继承让您可以只使用您需要的特性来创建复杂的类,而不会增加基类。
【讨论】: