Если вы проводите такое сравнение, вы должны использовать полностью определенное имя (тип 'java.lang.String'), чтобы убедиться, что совпадение действительно правильное (поскольку два класса могут иметь одинаковое "простое" имя и быть из разные пакеты).
Можете ли вы предоставить код, который вы использовали, чтобы мы могли подсказать вам, что нужно изменить, чтобы получить полные имена?
Метод getParameterTypes () возвращает класс [], поэтому каждый элемент является классом. Вы можете вызвать getCanonicalName () (или getName () в некоторых случаях, см. Javadoc для класса), чтобы получить полностью определенное имя.
Для массива объектов вы можете вызвать object.getClass (). GetCanonicalName (), чтобы получить эквивалент.
РЕДАКТИРОВАТЬ: Ответ Джона Скита - лучший подход, когда вы вообще не сравниваете имена, а вместо этого используете метод Class isInstance (), чтобы проверить совместимость этого класса.