一、定义 聚合:has-a,两个类弱关联,如人的车子、房子,可以通过配置获得,且车子独立于人。组合:part-of,两个类强关联,如人的四肢、五官,普通人生而有之,人在它们就在。 二、代码层面解释 聚合:一般通过setter注入,两个类生命周期独立,因为除了主类,被依赖的类还有其它引用。组合:一般在构造函数中引用,两个类生命周期一致,因为只有主类引用了该类。