• 设计模式-装饰者模式


    装饰者模式:

    在不改变原有对象的基础上,将功能附加到对象上

    /**
     * 装饰者模式
     */
    public class decoratorTest {
        public static void main(String[] args) {
            Component component = new ConcreteDecorator2(new ConcreteDecorator1(new concreteComponent()));
            component.operation();
        }
    }
    
    interface Component{
        void operation();
    }
    
    class concreteComponent implements Component{
        @Override
        public void operation() {
            System.out.println("拍照..");
        }
    }
    
    abstract class Decorator implements Component{
        Component component;
    
        public Decorator(Component component) {
            this.component = component;
        }
    }
    
    class ConcreteDecorator1 extends Decorator{
    
        public ConcreteDecorator1(Component component) {
            super(component);
        }
    
        @Override
        public void operation() {
            System.out.println("添加美颜..");
            component.operation();
        }
    }
    
    class ConcreteDecorator2 extends Decorator{
    
        public ConcreteDecorator2(Component component) {
            super(component);
        }
    
        @Override
        public void operation() {
            System.out.println("添加滤镜..");
            component.operation();
        }
    }
  • 相关阅读:
    SpringMVC运行原理浅析
    JavaEE就业学习路线(给初学者以及自学者一个学习方向)
    Java 教程
    EL表达式
    Java 教程 (Java 对象和类)
    Java 教程(开发环境配置+基础语法)
    简介几种负载均衡原理
    Linux常用命令大全
    Java 数据结构
    Java 包(package)
  • 原文地址:https://www.cnblogs.com/chenfx/p/14788129.html
Copyright © 2020-2023  润新知