9
设计继承如何导致额外的费用?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 所以,我想继承一个sealed class在CSHARP,结果被烧毁。除非您有权访问源,否则无法解封。 然后,我想到了“为什么sealed甚至存在?”。4个月前。尽管阅读了很多有关内容的文章,但我还是不知道,例如: 乔恩·斯凯特(Jon Skeet)的愿望是:“ 类在.NET中默认为封闭的。 ” 比继承更偏爱组成? “您不应该密封所有课程(...)” 您如何模拟密封课程? 从那以后我一直试图消化所有这些,但是对我来说太过分了。最终,昨天我再次尝试了。我再次扫描了所有这些文件,还有更多: 为什么一个班级应该不是“抽象”或“最终/密封”之外的任何东西? 在超过15年的编程时间中,我第一次听说SOLID时,是从已经链接的问题的答案中得出的,显然我四个月前都没有读过它 最后,经过深思熟虑,我决定根据新标题对原始问题进行大量编辑。 在老问题过于宽泛和主观的。基本上是在问: 旧标题中:使用密封的一个很好的理由 在正文中:如何正确修改密封类?忘记继承?使用成分? 但是现在,理解(我昨天没做过)所有事情sealed都在阻止继承,我们可以并且确实应该在继承上使用组合,我意识到我需要的是实际示例。 我想我的问题是(实际上一直都是)Mindor先生在聊天中向我提出的建议:继承设计如何导致额外的成本?
12
c#
inheritance