diff --git a/langtools/src/share/classes/javax/lang/model/AnnotatedConstruct.java b/langtools/src/share/classes/javax/lang/model/AnnotatedConstruct.java index a7d1a84c1fe..99bbe35cfae 100644 --- a/langtools/src/share/classes/javax/lang/model/AnnotatedConstruct.java +++ b/langtools/src/share/classes/javax/lang/model/AnnotatedConstruct.java @@ -31,29 +31,64 @@ import javax.lang.model.element.*; import javax.lang.model.type.*; /** - * Represent a construct that can have annotations. + * Represents a construct that can be annotated. * - * When annotations are on an {@linkplain Element element}, - * they are on a declaration. When annotations are on a {@linkplain - * TypeMirror type}, they are on a use of a type. + * A construct is either an {@linkplain + * javax.lang.model.element.Element element} or a {@linkplain + * javax.lang.model.type.TypeMirror type}. Annotations on an element + * are on a declaration, whereas annotations on a type are on + * a specific use of a type name. + * + * The terms directly present and present are used + * throughout this interface to describe precisely which annotations + * are returned by methods: + * + *
An annotation A is directly present on a + * construct E if E is annotated, and: + * + *
An annotation A is present on a construct E if either: + * + *
The annotation returned by this method could contain an element
* whose value is of type {@code Class}.
@@ -94,18 +129,19 @@ public interface AnnotatedConstruct {
* @see IncompleteAnnotationException
* @see MirroredTypeException
* @see MirroredTypesException
+ * @jls 9.6.1 Annotation Type Elements
*/
A getAnnotation(Class annotationType);
/**
- * Returns annotations that are present on this element or type use.
+ * Returns annotations that are present on this construct.
*
- * If there are no annotations present on this element or type use,
+ * If there are no annotations present on this construct,
* the return value is an array of length 0.
*
* The difference between this method and {@link #getAnnotation(Class)}
* is that this method detects if its argument is a repeatable
- * annotation type (JLS 9.6), and if so, attempts to find one or more
+ * annotation type, and if so, attempts to find one or more
* annotations of that type by "looking through" a container annotation.
*
* The annotations returned by this method could contain an element
@@ -147,6 +183,8 @@ public interface AnnotatedConstruct {
* @see IncompleteAnnotationException
* @see MirroredTypeException
* @see MirroredTypesException
+ * @jls 9.6 Annotation Types
+ * @jls 9.6.1 Annotation Type Elements
*/
A[] getAnnotationsByType(Class annotationType);
}
diff --git a/langtools/src/share/classes/javax/lang/model/type/ExecutableType.java b/langtools/src/share/classes/javax/lang/model/type/ExecutableType.java
index 3e8e53cbdaf..41132dcf2e0 100644
--- a/langtools/src/share/classes/javax/lang/model/type/ExecutableType.java
+++ b/langtools/src/share/classes/javax/lang/model/type/ExecutableType.java
@@ -30,7 +30,6 @@ import java.util.List;
import javax.lang.model.element.ExecutableElement;
-
/**
* Represents the type of an executable. An executable
* is a method, constructor, or initializer.