根据类名,方法名,反射调用类的方法

/**
    * 根据类名,方法名,反射调用类的方法
   * @方法名称: getResult
   * @描述: TODO
   * @param className
   * @param methodName
   * @param params
   * @return
    */
   public static String getResult(String className,String methodName,Map<String,Object> params){

         String result = null;

         try{
         Object obj = Class.forName(className).newInstance();
         Class clazz = obj.getClass();
         Method mothod = clazz.getDeclaredMethod(methodName, Map.class);
          result = (String) mothod.invoke(obj, params);
         }catch (Exception e) {
            e.printStackTrace();
        }
         return result;
     }

根据类名,方法名,反射调用类的方法

时间: 2024-10-25 08:34:04

根据类名,方法名,反射调用类的方法的相关文章

C#通过反射调用类及方法

反射有个典型的应用,就是菜单的动态加载,原理就是通过反射调用某个窗体(类).下面演示一下通过反射调用类及方法: 1.新建一个类,命名为:ReflectionHelper,代码如下: #region 创建对象实例 /// <summary> /// 创建对象实例 /// </summary> /// <typeparam name="T">对象类型</typeparam> /// <param name="assemblyN

C#如何通过反射调用类下的方法

首先模拟一个mvc的项目,创建一个业务类(HomeService),在类下创建3个方法 public class HomeService { /// <summary> /// 无参方法 /// </summary> /// <returns></returns> public string SayHello() { string str = "你好!"; return str; } /// <summary> /// 有参方

通过反射 调用 类里面的 方法的方法

通过反射 调用 类里面的 方法的方法(注意 重载 ,可以 按F12转到 定义 查看 ): 错误方法: MethodInfo dynMethod = this.GetType().GetMethod("Draw_" + itemType); dynMethod.Invoke(this, new object[] { methodParams }); 正确 方法 : MethodInfo dynMethod = this.GetType().GetMethod("Draw_&qu

C#基础-获得当前程序的 空间名.类名.方法名

string typeName = this.GetType().ToString();//空间名.类名 string typeName = this.GetType().Name;//类名 new System.Diagnostics.StackTrace().GetFrame(0).GetMethod().Name 方法名 C#基础-获得当前程序的 空间名.类名.方法名

如何用setInterval调用类的方法

setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式.setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭.由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数. 近日在编写程序时发现调用setInterval传入的方法时,在程序间隔调用时无法获取正确的类方法,究其原因是由于JS灵活的this指针重绑定导致的.那么this指针为什么会重绑定,又重绑定到哪里去了呢?se

[No000085]C#反射Demo,通过类名(String)创建类实例,通过方法名(String)调用方法

using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; class test { public void Method()//1 { Console.WriteLine("1:__" + "Method调用成功!"); } public void Method(string str)//2 { Cons

c# 获取方法所在的命名空间 类名 方法名

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; using System.Reflection; namespace GetMethodNameSpace { class Program { public static string GetMethodInfo() { string str = ""; //取得当

html调用js提示方法名 is not defined处理方法

解决办法(方法名 is not defined): dosave=function(){ alert("方法名在前"); } 下面这种写法有时候会出现错误: function dosave(){ alert("方法名在后"); } 原文地址:https://www.cnblogs.com/wanghaokun/p/9443329.html

Java_通过反射调用类中的方法

先上一个基本的封装: /** * 获取classType * * @param type * @param provinceCode * @param cityCode * @return * @throws Exception */ public Class<?> getClassType(String type, String provinceCode, String cityCode, String suffix) throws Exception { Class<?> cl