现在我主要实现的效果是,通过设置也个参数,根据不同的参数查出数据库中对应的类及方法,然后跳转到该方法中执行
在前调用方法时直接new你个对象就可以调用,但因为现在类是可变的,不知道怎么跳转到特定的方法中。
------解决方案--------------------
java 反射
------解决方案--------------------
利用发射调用,给你写了个例子,理解一下吧
- Java code
public class Test { public static void main(String[] args) throws Exception{ //1.需要提供class的name //2.需要提供方法名称 //3.需要提供方法参数类型; //4.参数值 //如果使用下面的这种需要提供无参构造 String className = "com.test.T"; String paramClass = "java.lang.String"; String methodName = "say"; String paramValue = "jack"; Class<?> c = Class.forName(className); Object obj = c.newInstance(); Method method = c.getDeclaredMethod(methodName, new Class[]{Class.forName(paramClass)}); method.invoke(obj, new Object[]{paramValue}); }}class T{ public void say(String name){ System.out.println("hello " + name); }}
------解决方案--------------------
反射。