Shape circle = new Circle(); Shape redCircle = new RedShapeDecorator(new Circle()); 看起来就像在Circle对象外包了一层RedShapeDecorator。 Shape redRectangle = new RedShapeDecorator(new Rectangle());让circle变成红色,使用对象没使用方法。能使用对象的不直接使用方法。 你办事我放心