Spec-Zone.ru › OpenJDK 21

Интерфейс аннотаций унаследован

@Documented @Retention(RUNTIME) @Target(ANNOTATION_TYPE) public @interface Inherited
Указывает, что интерфейс аннотаций автоматически наследуется. Если мета-аннотация Inherited присутствует в объявлении интерфейса аннотации, и пользователь запрашивает интерфейс аннотации в объявлении класса, и в объявлении класса нет аннотации для этого интерфейса, то для аннотации интерфейса автоматически будет запрошен суперкласс класса. Этот процесс будет повторяться до тех пор, пока не будет найдена аннотация для этого интерфейса или не будет достигнут верхний уровень иерархии классов (Object). Если ни один из суперклассов не имеет аннотации для этого интерфейса, то запрос укажет, что у рассматриваемого класса такой аннотации нет.

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

См. Спецификацию языка Java:
9.6.4.3 @Inherited
С:
1.5

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/annotation/Inherited.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API