大概写了点,你可以参考下
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Test {
public static void main(String[] args) {
useskSkill(1);
useskSkill(2);
}
public static Method useskSkill(int skillID) {
Method method = null;
try {
method = Test.class.getMethod("method_" + skillID, new Class[] {});
method.invoke(Test.class.newInstance(), new Object[] {});
} catch (SecurityException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
}
return method;
}
public void method_1() {
System.out.println("调用方法1..");
}
public void method_2() {
System.out.println("调用方2..");
}
}