Java™ Platform
Standard Ed. 8
compact3
javax.lang.model.util

Interface Elements



  • public interface Elements
    Utility methods for operating on program elements.

    Compatibility Note: Methods may be added to this interface in future releases of the platform.

    Since:
    1.6
    See Also:
    ProcessingEnvironment.getElementUtils()
    • Method Detail

      • getPackageElement

        PackageElement getPackageElement(CharSequence name)
        Returns a package given its fully qualified name.
        Parameters:
        name - fully qualified package name, or "" for an unnamed package
        Returns:
        the named package, or null if it cannot be found
      • getTypeElement

        TypeElement getTypeElement(CharSequence name)
        Returns a type element given its canonical name.
        Parameters:
        name - the canonical name
        Returns:
        the named type element, or null if it cannot be found
      • getDocComment

        String getDocComment(Element e)
        Returns the text of the documentation ("Javadoc") comment of an element.

        A documentation comment of an element is a comment that begins with "/**" , ends with a separate "*/", and immediately precedes the element, ignoring white space. Therefore, a documentation comment contains at least three"*" characters. The text returned for the documentation comment is a processed form of the comment as it appears in source code. The leading "/**" and trailing "*/" are removed. For lines of the comment starting after the initial "/**", leading white space characters are discarded as are any consecutive "*" characters appearing after the white space or starting the line. The processed lines are then concatenated together (including line terminators) and returned.

        Parameters:
        e - the element being examined
        Returns:
        the documentation comment of the element, or null if there is none
        See The Java™ Language Specification:
        3.6 White Space
      • isDeprecated

        boolean isDeprecated(Element e)
        Returns true if the element is deprecated, false otherwise.
        Parameters:
        e - the element being examined
        Returns:
        true if the element is deprecated, false otherwise
      • getBinaryName

        Name getBinaryName(TypeElement type)
        Returns the binary name of a type element.
        Parameters:
        type - the type element being examined
        Returns:
        the binary name
        See Also:
        TypeElement.getQualifiedName()
        See The Java™ Language Specification:
        13.1 The Form of a Binary
      • getPackageOf

        PackageElement getPackageOf(Element type)
        Returns the package of an element. The package of a package is itself.
        Parameters:
        type - the element being examined
        Returns:
        the package of an element
      • getAllMembers

        List<? extends Element> getAllMembers(TypeElement type)
        Returns all members of a type element, whether inherited or declared directly. For a class the result also includes its constructors, but not local or anonymous classes.

        Note that elements of certain kinds can be isolated using methods in ElementFilter.

        Parameters:
        type - the type being examined
        Returns:
        all members of the type
        See Also:
        Element.getEnclosedElements()
      • hides

        boolean hides(Element hider,
                      Element hidden)
        Tests whether one type, method, or field hides another.
        Parameters:
        hider - the first element
        hidden - the second element
        Returns:
        true if and only if the first element hides the second
      • overrides

        boolean overrides(ExecutableElement overrider,
                          ExecutableElement overridden,
                          TypeElement type)
        Tests whether one method, as a member of a given type, overrides another method. When a non-abstract method overrides an abstract one, the former is also said to implement the latter.

        In the simplest and most typical usage, the value of the type parameter will simply be the class or interface directly enclosing overrider (the possibly-overriding method). For example, suppose m1 represents the method String.hashCode and m2 represents Object.hashCode. We can then ask whether m1 overrides m2 within the class String (it does):

        assert elements.overrides(m1, m2, elements.getTypeElement("java.lang.String"));
        A more interesting case can be illustrated by the following example in which a method in type A does not override a like-named method in type B:
        class A { public void m() {} }
        interface B { void m(); }
        ...
        m1 = ...; // A.m
        m2 = ...; // B.m
        assert ! elements.overrides(m1, m2, elements.getTypeElement("A"));
        When viewed as a member of a third type C, however, the method in A does override the one in B:
        class C extends A implements B {}
        ...
        assert elements.overrides(m1, m2, elements.getTypeElement("C"));
        Parameters:
        overrider - the first method, possible overrider
        overridden - the second method, possibly being overridden
        type - the type of which the first method is a member
        Returns:
        true if and only if the first method overrides the second
        See The Java™ Language Specification:
        8.4.8 Inheritance, Overriding, and Hiding, 9.4.1 Inheritance and Overriding
      • getConstantExpression

        String getConstantExpression(Object value)
        Returns the text of a constant expression representing a primitive value or a string. The text returned is in a form suitable for representing the value in source code.
        Parameters:
        value - a primitive value or string
        Returns:
        the text of a constant expression
        Throws:
        IllegalArgumentException - if the argument is not a primitive value or string
        See Also:
        VariableElement.getConstantValue()
      • printElements

        void printElements(Writer w,
                           Element... elements)
        Prints a representation of the elements to the given writer in the specified order. The main purpose of this method is for diagnostics. The exact format of the output is not specified and is subject to change.
        Parameters:
        w - the writer to print the output to
        elements - the elements to print
      • getName

        Name getName(CharSequence cs)
        Return a name with the same sequence of characters as the argument.
        Parameters:
        cs - the character sequence to return as a name
        Returns:
        a name with the same sequence of characters as the argument
      • isFunctionalInterface

        boolean isFunctionalInterface(TypeElement type)
        Returns true if the type element is a functional interface, false otherwise.
        Parameters:
        type - the type element being examined
        Returns:
        true if the element is a functional interface, false otherwise
        Since:
        1.8
        See The Java™ Language Specification:
        9.8 Functional Interfaces
Java™ Platform
Standard Ed. 8

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部