zoukankan      html  css  js  c++  java
  • Java 反射调用动态方法

    package com.pigetest.util;
    
    import java.lang.reflect.Method;
    
    
    public class PrivateMethodTestHelper {
        public static Object invoke(String clazzName,String methodName,Object...params){
            try {
                Class<?> clazz=Class.forName(clazzName);
                Object obj=clazz.newInstance();
                Method[] methods = clazz.getDeclaredMethods();
                Method callMethod=null;
                for(Method method:methods){
                    if(method.getName().equals(methodName)){
                        callMethod=method;
                        break;
                    }
                }
                callMethod.setAccessible(true);
                return (Object) callMethod.invoke(obj,params);
    
    
            } catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }
    
    
    
        public static void main(String[] args) {
            int value=(Integer) PrivateMethodTestHelper.invoke("com.pigetest.util.AddNumber","addNumber",1,2);
            System.out.println(value);
        }
    
    }
  • 相关阅读:
    google搜索教程
    phoenix/stack-five
    phoenix/stack-four
    phoenix/stack-three
    phoenix/stack-one
    fork 在 Linux 内核里面的实现
    无文件执行 ELF
    glibc 堆内存管理杂记
    QOS shaping 知识要点
    QOS CQ
  • 原文地址:https://www.cnblogs.com/programerlrc/p/5628128.html
Copyright © 2011-2022 走看看