我有
public void setContacts(List<PersonContact> contacts) {
this.contacts = contacts;
}
需要使用Reflection获取此方法,我已经尝试了
clazz.getMethod("setContacts", ArrayList.class);
显示错误:
java.lang.NoSuchMethodException: model.person.Person.setContacts(java.util.ArrayList)
这是正确的,方法签名是
setContacts(List<PersonContact> contacts)
那么,我怎样才能在getMethod中传递正确的签名?
答案 0 :(得分:2)
参数类型为java.util.List
而不是java.util.ArrayList
clazz.getMethod("setContacts", List.class);
使用实际的类很重要,因为你也可以使用ArrayList参数重载该方法