ConcreteDecoratorA::operation PHP Method

operation() public method

public operation ( )
    public function operation()
    {
        parent::operation();
        //  调用装饰类的操作
        $this->addedOperationA();
        //  新增加的操作
    }

Usage Example

class ConcreteDecoratorB extends Decorator
{
    // 具体装饰类B
    public function __construct(Component $component)
    {
        parent::__construct($component);
    }
    public function operation()
    {
        parent::operation();
        $this->addedOperationB();
    }
    public function addedOperationB()
    {
        echo "B加点辣椒;";
    }
}
class ConcreteComponent implements Component
{
    //具体组件类
    public function operation()
    {
    }
}
// clients
$component = new ConcreteComponent();
$decoratorA = new ConcreteDecoratorA($component);
$decoratorB = new ConcreteDecoratorB($decoratorA);
$decoratorA->operation();
echo '<br>--------<br>';
$decoratorB->operation();