objectstructure.java

来自「Java设计模式(GOF)代码样例以及文档说明」· Java 代码 · 共 57 行

JAVA
57
字号
/*
 * 项目名称 Pattern
 * 包名称   com.niufish.pattern.visitor
 * 
 * 文件名称 ObjectStructure.java
 * 
 */
package com.niufish.pattern.visitor;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * 结构对象角色
 * <p>
 * <a href="ObjectStructure.java.html"><i>View Source</i></a>
 * </p>
 * @author  Kingfish
 * @version 1.0
 */
public class ObjectStructure {
    
    /**
     * 持有的元素的聚集
     */
    private List _elements;
    
    /**
     * 初始化元素的聚集
     */
    public ObjectStructure(){
        _elements = new ArrayList();
    }
    
    /**
     * 执行访问操作
     * @param visitor
     */
    public void action(Visitor visitor){
        Iterator it = _elements.iterator();
        while (it.hasNext()){
            Element e = (Element)it.next();
            e.accept(visitor);
        }
    }
    
    /**
     * 增加一个新的元素
     * @param el 新的元素
     */
    public void add(Element el){
        _elements.add(el);
    }

}

⌨️ 快捷键说明

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