W3cubDocs

/OpenJDK 21

Annotation Interface Inherited

@Documented @Retention(RUNTIME) @Target(ANNOTATION_TYPE) public @interface Inherited
Indicates that an annotation interface is automatically inherited. If an Inherited meta-annotation is present on an annotation interface declaration, and the user queries the annotation interface on a class declaration, and the class declaration has no annotation for this interface, then the class's superclass will automatically be queried for the annotation interface. This process will be repeated until an annotation for this interface is found, or the top of the class hierarchy (Object) is reached. If no superclass has an annotation for this interface, then the query will indicate that the class in question has no such annotation.

Note that this meta-annotation interface has no effect if the annotated interface is used to annotate anything other than a class. Note also that this meta-annotation only causes annotations to be inherited from superclasses; annotations on implemented interfaces have no effect.

See Java Language Specification:
9.6.4.3 @Inherited
Since:
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