装饰器模式与继承的区别?为什么优先用组合?