我在开发的过程中,为了提升代码的可扩展性,决定在配置文件中配置需要调用的方法名和类名。
然后代码在执行的过程中,通过反射的方式调用方法。

  1. 加载对应的类

    Class cls = User.class.getClassLoader().loadClass("com.learn.Task")
  2. 获取所有的方法

    Method[] methods = cls.getMethods();
    for(Method method : methods) {
     
    }
  3. 找到目标方法,判断目标方法是否满足要求(这里需要是静态的)

    for(Method method : methods) {
     if (method.getName().equals(methodName)
                     && Modifier.toString(method.getModifiers()).contains("static")) {
                     method.invoke(null);
     }
    }   

水一水
39 声望5 粉丝

总结经验,提升自己


引用和评论

0 条评论