Interface ExecutableElement

All Superinterfaces:
AnnotatedConstruct, Element, Parameterizable

public interface ExecutableElement extends Element, Parameterizable
Represents a method, constructor, or initializer (static or instance) of a class or interface, including annotation interface elements. Annotation interface elements are methods restricted to have no formal parameters, no type parameters, and no throws clause, among other restrictions; see JLS 9.6.1 for details.
Since:
1.6
See Also:
  • Method Details

    • asType

      TypeMirror asType()
      Returns the executable type defined by this executable element.
      Specified by:
      asType in interface Element
      Returns:
      the executable type defined by this executable element
      See Also:
    • getTypeParameters

      List<? extends TypeParameterElement> getTypeParameters()
      Returns the formal type parameters of this executable in declaration order.
      Specified by:
      getTypeParameters in interface Parameterizable
      Returns:
      the formal type parameters, or an empty list if there are none
    • getReturnType

      TypeMirror getReturnType()
      Returns the return type of this executable. Returns a NoType with kind VOID if this executable is not a method, or is a method that does not return a value.
      Returns:
      the return type of this executable
    • getParameters

      List<? extends VariableElement> getParameters()
      Returns the formal parameters of this executable. They are returned in declaration order.
      Returns:
      the formal parameters, or an empty list if there are none
    • getReceiverType

      TypeMirror getReceiverType()
      Returns the receiver type of this executable, or NoType with kind NONE if the executable has no receiver type. An executable which is an instance method, or a constructor of an inner class, has a receiver type derived from the declaring type. An executable which is a static method, or a constructor of a non-inner class, or an initializer (static or instance), has no receiver type.

      The receiver parameter is a syntactic device added to the language for the purpose of hosting annotations. Even when source code is used as the basis for creating an executable, if a receiver parameter is not present in the source code, an implementation may elect to return a NoType object even in cases where a receiver type is nominally defined on the executable in question, such as an instance method. When a receiver parameter is present and hosting annotations, a suitably annotated receiver type is returned.

      Returns:
      the receiver type of this executable
      See Java Language Specification:
      8.4 Method Declarations
      8.4.1 Formal Parameters
      8.8 Constructor Declarations
      Since:
      1.8
    • isVarArgs

      boolean isVarArgs()
      Returns true if this method or constructor accepts a variable number of arguments and returns false otherwise.
      Returns:
      true if this method or constructor accepts a variable number of arguments and returns false otherwise
    • isDefault

      boolean isDefault()
      Returns true if this method is a default method and returns false otherwise.
      Returns:
      true if this method is a default method and returns false otherwise
      Since:
      1.8
    • getThrownTypes

      List<? extends TypeMirror> getThrownTypes()
      Returns the exceptions and other throwables listed in this method or constructor's throws clause in declaration order.
      Returns:
      the exceptions and other throwables listed in the throws clause, or an empty list if there are none
    • getDefaultValue

      AnnotationValue getDefaultValue()
      Returns the default value if this executable is an annotation interface element. Returns null if this method is not an annotation interface element, or if it is an annotation interface element with no default value.
      Returns:
      the default value, or null if none
    • getEnclosingElement

      Element getEnclosingElement()
      Returns the class or interface defining the executable.
      Specified by:
      getEnclosingElement in interface Element
      Returns:
      the class or interface defining the executable
      See Also:
    • getSimpleName

      Name getSimpleName()
      Returns the simple name of a constructor, method, or initializer. For a constructor, the name "<init>" is returned, for a static initializer, the name "<clinit>" is returned, and for an anonymous class or instance initializer, an empty name is returned.
      Specified by:
      getSimpleName in interface Element
      Returns:
      the simple name of a constructor, method, or initializer
      See Also: