- 所有已知的实现类:
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
所有注解扩展的公共接口。请注意,手动扩展此接口的接口确实not定义注解接口。另请注意,此接口本身并未定义注释接口。有关注释接口的更多信息,请参阅第 9.6 节Java 语言规范
AnnotatedElement
接口讨论了将注解接口从不可重复演变为可重复时的兼容性问题。
- 自从:
- 1.5
-
方法总结
修饰符和类型方法描述Class<? extends Annotation>
返回该注解的注解。boolean
如果指定的对象表示在逻辑上等同于此注释的注释,则返回 true。int
hashCode()
返回此注释的哈希码。toString()
返回此注释的字符串表示形式。
-
方法详情
-
equals
如果指定的对象表示在逻辑上等同于此注释的注释,则返回 true。换句话说,如果指定对象是与此实例相同的注解的实例,则返回 true,其所有成员都等于此注解的相应成员,定义如下:- 如果
x == y
值为x
和y
的两个相应原始类型成员被认为是相等的,除非它们的类型是float
或double
。 - 如果
Float.valueOf(x).equals(Float.valueOf(y))
,则两个相应的float
成员的值为x
和y
被认为是相等的。 (与==
运算符不同,NaN 被认为等于自身,而0.0f
不等于-0.0f
。) - 如果
Double.valueOf(x).equals(Double.valueOf(y))
,则两个相应的double
成员的值为x
和y
被认为是相等的。 (与==
运算符不同,NaN 被认为等于自身,而0.0
不等于-0.0
。) - 如果
x.equals(y)
,则两个相应的String
、Class
、枚举或注释类型成员的值是x
和y
被认为是相等的。 (请注意,此定义对于注释类型成员是递归的。) - 两个相应的数组类型成员
x
和y
如果Arrays.equals(x, y)
被认为是相等的,用于Arrays.equals
的适当重载。
- 如果
-
hashCode
int hashCode()返回此注释的哈希码。注解的哈希码是其成员(包括具有默认值的成员)的哈希码之和。注解成员的散列码是(由
String.hashCode()
计算的成员名散列码的 127 倍)XOR 成员值的散列码。成员值的哈希码取决于其定义如下的类型: -
toString
String toString()返回此注释的字符串表示形式。表示的细节是依赖于实现的,但以下可能被认为是典型的:@com.example.Name(first="Duke", middle="of", last="Java")
-
annotationType
Class <? extends Annotation > annotationType()返回该注解的注解。- API 注意:
-
依赖于实现的类用于提供注释的实现。因此,在注释上调用
getClass
将返回一个依赖于实现的类。相比之下,这个方法会可靠地返回注解的注解接口。 - 返回:
- 该注解的注解
- 参见:
-