继承和组合是两种不同且密切相关的技术,允许设计者扩展类的属性。面向对象设计原则中强调"能用组合不用继承"。为支持这一原则,在设计模式教学中给出许多例子。而为了强调继承重要性,讨论了一种特殊的继承类型——直接继承与单成员组合,并通过实例说明在这些情况下继承更精确和简洁。