4
У меня есть метод в классе, как это:типов аргументов посланных getDeclaredMethod (String, Class []) в Java Reflection
public static void postEvents(List<RuleEvent> eventList) {
for(RuleEvent event:eventList)
if(canProcess(event))
findListenerAndPost(event);
}
и я хочу, чтобы получить доступ к нему с помощью отражения, как это:
Class partypes[] = new Class[1];
partypes[0] = List.class; //does not find the method as it is of List<RuleEvent>
postMethod = cls.getMethod("postEvents", partypes);
так, как мне получить объект класса List<RuleEvent>
????
я уже знаю способ ((List<RuleEvent>) new ArrayList<RuleEvent>()).getClass()
но должна быть более прямым путем ...
Работает отлично для меня. Вы получили сообщение об ошибке? Из-за стирания типа во время выполнения не существует «Список». –
Я просто не нахожу метод. он приходит как null – MozenRath
Является ли 'cls' правильным классом? Ноль?! Вы должны получить 'NoSuchMethodException', если метод не существует. –