【发布时间】:2010-09-16 13:00:32
【问题描述】:
我遇到了许多反对在 C# 中包含多重继承的论点,其中一些包括(撇开哲学论点):
- 多重继承太复杂而且经常模棱两可
- 没有必要,因为接口提供了类似的东西
- 在接口不合适的情况下,组合是一个很好的替代品
我来自 C++ 背景,怀念多重继承的强大和优雅。尽管它并不适合所有软件设计,但在某些情况下,很难否认它对接口、组合和类似的 OO 技术的实用性。
排除多重继承是否意味着开发人员不够聪明,无法明智地使用它们,并且无法在复杂性出现时解决它们?
我个人很欢迎在 C#(可能是 C##)中引入多重继承。
附录:我很想知道来自单一(或程序背景)与多重继承背景的回复。我经常发现没有多重继承经验的开发人员通常会默认使用多重继承是不必要的论点,因为他们没有任何范式经验。
【问题讨论】:
-
我看不出多重继承有多优雅。
标签: c# inheritance multiple-inheritance