⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 decorator.java

📁 java 设计模式之Decorator(油漆工)
💻 JAVA
字号:
package com.zwwdd.www.decorator;

import java.util.ArrayList;
//import java.util.ListIterator;
import java.util.Iterator;

/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2007</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class Decorator implements Work{
    private Work work;

    //额外增加的功能被打包在这个List中
    private ArrayList others = new ArrayList();

    //在构造器中使用组合new方式,引入Work对象;
    public Decorator(Work work) {
        this.work = work;
        others.add("挖坑");
        others.add("钉木板");
    }

    public void insert() {
        newMethod();
    }


//在新方法中,我们在insert之前增加其他方法,这里次序先后是用户灵活指定的
    public void newMethod() {
        otherMethod();
        work.insert();
    }

    public void otherMethod() {
//        ListIterator listIterator = others.listIterator();
        Iterator iter = others.iterator();
        while (iter.hasNext()) {
            System.out.println(((String) (iter.next())) + " 正在进行");
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -