// visitor
public interface Visitor {
void visit(FundA fundA);
}
public interface Element {
void accept(Visitor visitor);
}
public class FundA implements Element {
private String name;
public FundA(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
public void accept(Visitor visitor) {
visitor.visit(this);
}
}
public class VisitorA implements Visitor {
public void visit(FundA fundA) {
System.out.println(fundA.getName());
}
}
public class Client {
public static void main(String [] args) {
Element fundA = new FundA("fundA");
fundA.accept(new VisitorA());
}
}