java 实现装饰器设计模式

Posted 流星小子

tags:

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

package com.gylhaut.base;

/**
 * 装饰器
 * 类与类之间的关系
 * 1.依赖:形参(局部变量)
 * 2.关联:属性
 *      聚合 属性 整体和部分 不一致的生命周期 人和手
 *      组合 属性 整体和部分 一致的生命周期 人和大脑
 * 3.继承:父子类关系
 * 4.实现:接口与实现的关系
 */
public class Decorator {
    private Voice voice;


    public void say(){
        System.out.println("val="+1000*voice.getVal());
    }

    public Decorator(Voice voice) {
        this.voice = voice;
    }

    public Voice getVoice() {
        return voice;
    }

    public void setVoice(Voice voice) {
        this.voice = voice;
    }
}
package com.gylhaut.base;

public class Voice {
    private int val = 10;

    public Voice() {
    }
    public void say(){
        System.out.println("val="+val);
    }

    public int getVal() {
        return val;
    }

    public void setVal(int val) {
        this.val = val;
    }
}

  

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

Java开发设计模式 09:装饰器模式

Java设计模式----------装饰器模式

python使用上下文对代码片段进行计时,非装饰器

装饰器模式-Decorator(Java实现)

java 实现装饰器设计模式

Java 设计模式之装饰器学习与掌握