Почему классы Java не наследуют аннотации от реализованных интерфейсов?

Я использовал AOP Guice для перехвата вызовов некоторых методов. Мой класс реализует интерфейс, и я хотел бы аннотировать методы интерфейса, чтобы Guice мог выбрать правильные методы. Даже если тип аннотации аннотируется с помощью Inherited класс реализации аннотации не наследует аннотацию, как указано в java-документе Inherited:

Также обратите внимание, что эта мета-аннотация вызывает только аннотации унаследован от суперклассов; аннотации реализованных интерфейсов не действуют.

В чем может быть причина этого? Ознакомиться со всеми интерфейсами, которые класс объекта реализует во время выполнения, не так уж и сложно, поэтому для этого решения должна быть веская причина.

104
задан Boris Pavlović 20 April 2011 в 06:43
поделиться