Java反射创建带构造参数的类 并执行方法

Posted Sgmder的技术博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java反射创建带构造参数的类 并执行方法相关的知识,希望对你有一定的参考价值。

部分代码

public void go(ServletRequest request,ServletResponse response){

        String methodName = "index";//方法名
        String className = "indexAction";//类名
        try{
            Class<?> action = Class.forName(className);

            //参数列表
            Class<?>[] parameterTypes={ServletRequest.class,ServletResponse.class};

            //获取参数对应的构造方法
            Constructor<?> constructor=action.getConstructor(parameterTypes); 

            //参数
            Object[] parameters={request,response};  

            //获取方法
            Method method = action.getMethod(methodName);

            //上面的方法针对public method 若目标是private method 则使用此种
            //Method method = action.getDeclaredMethod(methodName);
            //method.setAccessible(true);

            method.invoke(constructor.newInstance(parameters));
        }
        catch(Exception e){
            e.printStackTrace();
        }
}

  

以上是关于Java反射创建带构造参数的类 并执行方法的主要内容,如果未能解决你的问题,请参考以下文章

JAVA反射中通过Class.forname()如何带参数的方法怎么赋值和调用呀?

反射获取带参数的构造方法

C#反射执行方法返回List,怎么获取List

java 反射 如何得到构造函数的参数列表

JAVA反射中通过Class.forname()如何带参数的方法怎么赋值和调用呀?

java中反射的三种方法是?