В javadoc для Class::getDeclaredConstructor
(http://docs.oracle.com/javase/8/docs/api/java/lang/Class.html#getDeclaredConstructor-java.lang.Class...-):
Возвращает объект Constructor, который отражает указанный конструктор класса или интерфейса, представленного этим объектом класса. [акцент мой]
Поскольку вы не можете объявить конструктор для интерфейса, что означало бы вернуть "указанный конструктор" интерфейса?
Я попробовал его на Runnable.class
и получил NoSuchMethodException
. Есть ли случай, когда getDeclaredConstructor
будет работать на интерфейсе? Или этот язык в javadoc просто ошибка? Или это означает нечто иное, чем то, как я его интерпретирую?