visitor模式

来源:互联网 发布:远程网络教育四川大学 编辑:程序博客网 时间:2024/06/06 14:05
    抽象数据类型包括数据,数据之间的关系,对数据的操作。    这种模式能够将操作和数据及数据关系分离,提供接口,让用户定制自己对数据的操作
   //数据结构部分代码   public class MyDataStructure {    private List<String> list = new ArrayList<String>();    private Set<String> set = new HashSet<String>();    public void accept(MyVisitor visitor) {        visitor.visit(this);        visitor.visit(list);        visitor.visit(set);    }} 
//向用户暴露的接口public interface MyVisitor {    public void visit(MyDataStructure ds) ;    public void visit(List<?> list);    public void visit(Set<?> set);}
//用户定制自己对数据结构的操作public class MyVisitorImpl implements MyVisitor {    ...    ...}

“`