Interface Annotation
- All Known Implementing Classes:
- BeanProperty,- BooleanFlag,- Category,- ConstructorParameters,- ConstructorProperties,- ContentType,- DataAmount,- Deprecated,- Description,- DescriptorKey,- Documented,- Enabled,- Experimental,- Frequency,- FunctionalInterface,- Generated,- Inherited,- JavaBean,- Label,- MemoryAddress,- MetadataDefinition,- MXBean,- Name,- Native,- Override,- Percentage,- Period,- Registered,- Relational,- Repeatable,- Retention,- SafeVarargs,- Serial,- SettingDefinition,- StackTrace,- SupportedAnnotationTypes,- SupportedOptions,- SupportedSourceVersion,- SuppressWarnings,- SwingContainer,- Target,- Threshold,- Timespan,- Timestamp,- Transient,- TransitionFrom,- TransitionTo,- Unsigned
public interface Annotation
The common interface extended by all annotation interfaces.  Note that an
 interface that manually extends this one does not define
 an annotation interface.  Also note that this interface does not itself
 define an annotation interface.
 More information about annotation interfaces can be found in section
 9.6 of The Java Language Specification.
 The 
AnnotatedElement interface discusses
 compatibility concerns when evolving an annotation interface from being
 non-repeatable to being repeatable.- Since:
- 1.5
- 
Method SummaryModifier and TypeMethodDescriptionClass<? extends Annotation> Returns the annotation interface of this annotation.booleanReturns true if the specified object represents an annotation that is logically equivalent to this one.inthashCode()Returns the hash code of this annotation.toString()Returns a string representation of this annotation.
- 
Method Details- 
equalsReturns 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 interface 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 are
    xandyare considered equal ifx == y, unless their type isfloatordouble.
- Two corresponding floatmembers whose values arexandyare considered equal ifFloat.valueOf(x).equals(Float.valueOf(y)). (Unlike the==operator, NaN is considered equal to itself, and0.0funequal to-0.0f.)
- Two corresponding doublemembers whose values arexandyare considered equal ifDouble.valueOf(x).equals(Double.valueOf(y)). (Unlike the==operator, NaN is considered equal to itself, and0.0unequal to-0.0.)
- Two corresponding String,Class, enum, or annotation typed members whose values arexandyare considered equal ifx.equals(y). (Note that this definition is recursive for annotation typed members.)
- Two corresponding array typed members xandyare considered equal ifArrays.equals(x, y), for the appropriate overloading ofArrays.equals.
 
- Two corresponding primitive typed members whose values are
    
- 
hashCodeint hashCode()Returns the hash code of this annotation.The hash code of an annotation is the sum of the hash codes of its members (including those with default values). The hash code of an annotation member is (127 times the hash code of the member-name as computed by String.hashCode()) XOR the hash code of the member-value. The hash code of a member-value depends on its type as defined below:- The hash code of a primitive value vis equal toWrapperType.valueOf(v).hashCode(), whereWrapperTypeis 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
     vis 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 of
     Arrays.hashCodeon the value. (There is one overloading for each primitive type, and one for object reference types.)
 
- The hash code of a primitive value 
- 
toStringString 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.example.Name(first="Duke", middle="of", last="Java") 
- 
annotationTypeClass<? extends Annotation> annotationType()Returns the annotation interface of this annotation.- API Note:
- Implementation-dependent classes are used to provide
 the implementations of annotations. Therefore, calling getClasson an annotation will return an implementation-dependent class. In contrast, this method will reliably return the annotation interface of the annotation.
- Returns:
- the annotation interface of this annotation
- See Also:
 
 
-