频道栏目
首页 > 资讯 > 其他综合 > 正文

用代码实例分析行为型模式和访问者模式

18-06-02        来源:[db:作者]  
收藏   我要投稿

用代码实例分析行为型模式和访问者模式

1 主要将数据结构与数据操作分离。
interface Visitor{
    public void visitElement(ElementA elementA);
}
class VisitorA implements Visitor{
    @Override
    public void visitElement(ElementA elementA) {
        elementA.doSomething();
    }
}
abstract class Element{
    public abstract void accept(Visitor visitor);
}
class ElementA extends Element{
    public void doSomething(){
        System.out.println("this is elementA");
    }
    @Override
    public void accept(Visitor visitor) {
        visitor.visitElement(this);
    }
}
class ObjectStruture{
    private ArrayList list = new ArrayList();
    public void traverseElement(Visitor visitor){
        Iterator i = list.iterator();
        while (i.hasNext()){
            ((Element)i.next()).accept(visitor);
        }
    }
    public void addElement(Element element){
        list.add(element);
    }
}
public class Test{
    public static void main(String[] args){
        ObjectStruture objectStruture = new ObjectStruture();
        for (int i = 0; i < 5; i++)
            objectStruture.addElement(new ElementA());
        objectStruture.traverseElement(new VisitorA());
    }
}
相关TAG标签
上一篇:链表插入排序 - 开发练习题
下一篇:传输层简单介绍和使用分析
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站