访问中模式封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。
public class Window1 extends Window{
public void accept(Visitor visitor) {
visitor.visit( this );
}
public void service() {
System. out .println("window1 service" );
}
}
public class Window1 extends Window{
public void accept(Visitor visitor) {
visitor.visit( this );
}
public void service() {
System. out .println("window1 service" );
}
}
public class Window2 extends Window{
public void accept(Visitor visitor) {
visitor.visit( this );
}
public void service() {
System. out .println("window2 service" );
}
}
public class VisitorClient {
public static void main(String []args) {
Visitor visitor = new Visitor();
Window w1 = new Window1();
Window w2 = new Window2();
visitor.visit(w1);
visitor.visit(w2);
}
}