10 我正在为wordpress网站开发一系列的帖子过滤器,并且已经用一个类构建了前四个。 最后两个在作用域上有足够的不同,以使其类中仅共享一个函数(用于产生最终链接的函数)。 在这种情况下或在任何数量的类似假设情况下,扩展原始类以具有该功能是否合理,还是有更好的方法? object-oriented class-design — 轻度绒毛 source 我不明白这个问题。用类构建事物是什么意思?这些类是否继承自某些东西?层次结构顶部的类是否已经具有通用功能? — David Thornley
19 不,如果两个类的区别如此之大,以至于它们仅共享一个功能,则它们是不可互换的-因此它们将破坏liskov替代原理。 仅在合理的情况下才从基类派生。共享单个代码很少是继承的理由:) 在这个特定的示例中,听起来您想通过合成来重新使用该功能... — 马特·戴维 source 3 优先考虑组成而不是继承!在大多数情况下,从长远来看,这将使您的生活更简单。 — 特拉维斯 组成FTW! — back2dos 值得一提的是,我的答案与@Sardathrion基本上相同,我只是链接到相关的发布原则:) — MattDavey 2011年