一、前言 例如坦克大战: 坦克想加一个外壳显示想加一个血条想加一条尾巴子弹想加一条尾巴子弹想加一个外壳… 如果用继承的话,则会 BloodTankTailBankRectBankBloodTailTankBloodRectTankTailBullet 缺点:非常不灵活,装饰和被装饰之间耦合度太高 二、解决方案 不使用继承,用 聚合 的方式来代替继承