java - 将列表作为参数传递给 java.lang.reflect.Method

标签 java generics

我有一个看起来像这样的方法;

public void update(List<Object> obj);

我希望能够使用java.lang.reflect.Method 来调用该方法。有谁知道该怎么做?

最佳答案

使用 Class获取方法的类:

Class<?> clazz = theObject.getClass();
Method method = clazz.getMethod("update", List.class);

然后调用方法:

method.invoke(theObject, new ArrayList<Object>());

泛型在运行时被删除。它们是编译时的东西。因此,您可以使用 List.class引用List<Object> .

关于java - 将列表作为参数传递给 java.lang.reflect.Method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6136801/

相关文章:

Java 泛型和转换泛型类型

java - 程序忽略 "If Else"并打印所有内容

c# - 这是处理泛型独特属性的好方法吗?

Scala 函数/方法参数化返回类型

java - 您可以根据输入(例如字符串)确定 iText 中的列宽吗?

Scala 工厂模式根据泛型类型返回具体类

c++ - 将参数定义为未指定的模板类型

java - java Socket类中的sendbuffersize可以设置多大?

java - 从 WebSphere 管理控制台 7.0 或使用 WebSphere Application Server 的 utils 调用 EJB 无状态 session Bean 方法

java - 如何在弹出窗口中直接显示动态添加的项目,而不需要双击?