Interface AnnotatedType<X>

  • Type Parameters:
    X - the type
    All Superinterfaces:
    Annotated

    public interface AnnotatedType<X>
    extends Annotated

    Represents a Java class or interface.

    Author:
    Gavin King, Pete Muir
    See Also:
    Class
    • Method Detail

      • getJavaClass

        Class<X> getJavaClass()

        Get the underlying Class.

        Returns:
        the Class
      • getConstructors

        Set<AnnotatedConstructor<X>> getConstructors()

        Get the constructors of the type. If an empty set is returned, a default constructor with no parameters will be assumed.

        Returns:
        the constructors, or an empty set if none are defined
      • getMethods

        Set<AnnotatedMethod<? super X>> getMethods()

        Get the methods of the type.

        Returns:
        the methods, or an empty set if none are defined
      • getFields

        Set<AnnotatedField<? super X>> getFields()

        Get the fields of the type.

        Returns:
        the fields, or an empty set if none are defined
      • getAnnotations

        default <T extends AnnotationSet<T> getAnnotations​(Class<T> annotationType)
        Description copied from interface: Annotated

        Get program element annotations of a certain annotation type.

        This method returns back all annotations, including repeatable annotations of this type. The behavior of this method is intended to be the same behavior as AnnotatedElement.getAnnotationsByType(Class), where repeatable annotations are supported.

        Specified by:
        getAnnotations in interface Annotated
        Type Parameters:
        T - the type of the annotation
        Parameters:
        annotationType - the class of the annotation type
        Returns:
        the program element annotations of the given annotation type, or an empty collection