情况: 一个类中有很多同名方法,名字相同,参数列表不一样。假设仅仅一个参数 目的: 通过一个dispatch方法,其参数为该同名方法的参数,根据参数的类型调用相应的方法。 设计: public void dispatchVisit(Object o) { try { Method method = getClass().getMethod(“methodName”, o.getClass()); method.invoke(this, new Object[] {o}); } catch (Exception e) { } } Public void visit(String str) {} Public void visit(Int a) {}