装饰者模式

Posted yz-bky

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了装饰者模式相关的知识,希望对你有一定的参考价值。

装饰者模式动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。
和代理模式很相似,但在对被装饰的对象的控制程度是不同的;装饰者模式是对对象功能的加强,
而代理模式是对对象施加控制,并不提供对对象本身功能的加强。
package com.bdqn.cn.dao;

class Car{
    private String carName;
    public Car(String carName)
    {
        this.carName=carName;
    };
    public void show()
    {
        System.out.println("我是"+carName+"具有本功能");
    };
}
class RadarCar{
    public Car myCar;
    public RadarCar(Car myCar)
    {
        super();
        this.myCar=myCar;
    };
    public void show()
    {
        myCar.show();
        System.out.println("具有打电话功能");
    };
}


public class zhuangshizhe {
    public static void main(String[] args)
    {
        Car car=new Car("小米");
        car.show();
        System.out.println("============");
        RadarCar myCar=new RadarCar(car);
        myCar.show();
    };
}

 


以上是关于装饰者模式的主要内容,如果未能解决你的问题,请参考以下文章

Java设计模式之装饰者模式

设计模式整理_装饰者模式

设计模式-装饰者模式(Go语言描述)

设计模式-装饰者模式(Go语言描述)

装饰者模式

设计模式 之 装饰者模式