标签:设计模式
package com.eyugame.modle;
/**
* 访问者模式
* @author JYC506
*
*/
/*访问者*/
public class Visitor implements IVisitor{
@Override
public void update(IPro o) {
o.doSomeThing();
}
public static void main(String[] args) {
IPro pro1=new Pro1();
IPro pro2=new Pro2();
IVisitor visitor=new Visitor();
pro1.acept(visitor);
pro2.acept(visitor);
}
}
interface IVisitor{
void update(IPro o);
}
/*产品*/
interface IPro{
void acept(IVisitor visitor);
void doSomeThing();
}
/*产品1*/
class Pro1 implements IPro{
@Override
public void acept(IVisitor visitor) {
visitor.update(this);
}
@Override
public void doSomeThing() {
System.out.println("pro1 do something");
}
}
/*产品2*/
class Pro2 implements IPro{
@Override
public void acept(IVisitor visitor) {
visitor.update(this);
}
@Override
public void doSomeThing() {
System.out.println("pro2 do something");
}
}标签:设计模式
原文地址:http://blog.csdn.net/h348592532/article/details/45306857