Module java.base
Package java.lang.annotation

Interface Annotation

    • Method Detail

      • equals

        boolean equals​(Object obj)
        Returns true if the specified object represents an annotation that is logically equivalent to this one. In other words, returns true if the specified object is an instance of the same annotation type as this instance, all of whose members are equal to the corresponding member of this annotation, as defined below:
        • Two corresponding primitive typed members whose values arex andy are considered equal ifx == y, unless their type isfloat ordouble.
        • Two correspondingfloat members whose values arex andy are considered equal ifFloat.valueOf(x).equals(Float.valueOf(y)). (Unlike the== operator, NaN is considered equal to itself, and0.0f unequal to-0.0f.)
        • Two correspondingdouble members whose values arex andy are considered equal ifDouble.valueOf(x).equals(Double.valueOf(y)). (Unlike the== operator, NaN is considered equal to itself, and0.0 unequal to-0.0.)
        • Two correspondingString,Class, enum, or annotation typed members whose values arex andy are considered equal ifx.equals(y). (Note that this definition is recursive for annotation typed members.)
        • Two corresponding array typed membersx andy are considered equal ifArrays.equals(x, y), for the appropriate overloading ofArrays.equals(long[], long[]).
        Overrides:
        equals in class Object
        Parameters:
        obj - the reference object with which to compare.
        Returns:
        true if the specified object represents an annotation that is logically equivalent to this one, otherwise false
        See Also:
        Object.hashCode(),HashMap
      • hashCode

        int hashCode()
        Returns the hash code of this annotation, as defined below:

        The hash code of an annotation is the sum of the hash codes of its members (including those with default values), as defined below: The hash code of an annotation member is (127 times the hash code of the member-name as computed byString.hashCode()) XOR the hash code of the member-value, as defined below:

        The hash code of a member-value depends on its type:

        • The hash code of a primitive valuev is equal toWrapperType.valueOf(v).hashCode(), whereWrapperType is the wrapper type corresponding to the primitive type ofv (Byte,Character,Double,Float,Integer,Long,Short, orBoolean).
        • The hash code of a string, enum, class, or annotation member-value Iv is computed as by callingv.hashCode(). (In the case of annotation member values, this is a recursive definition.)
        • The hash code of an array member-value is computed by calling the appropriate overloading ofArrays.hashCode on the value. (There is one overloading for each primitive type, and one for object reference types.)

        Overrides:
        hashCode in class Object
        Returns:
        the hash code of this annotation
        See Also:
        Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
      • toString

        String toString()
        Returns a string representation of this annotation. The details of the representation are implementation-dependent, but the following may be regarded as typical:
           @com.acme.util.Name(first=Alfred, middle=E., last=Neuman)
        Overrides:
        toString in class Object
        Returns:
        a string representation of this annotation
      • annotationType

        Class<? extendsAnnotation> annotationType()
        Returns the annotation type of this annotation.
        Returns:
        the annotation type of this annotation