ove*_*nge 5 java types annotations java-8
在此示例中,注释类型(@interface)下面:
@interface ClassPreamble {
String author();
String date();
int currentRevision() default 1;
String lastModified() default "N/A";
String lastModifiedBy() default "N/A";
// Note use of array
String[] reviewers();
}
Run Code Online (Sandbox Code Playgroud)
被编译为interface键入:
interface annotationtype.ClassPreamble extends java.lang.annotation.Annotation{
public abstract java.lang.String author();
public abstract java.lang.String date();
public abstract int currentRevision();
public abstract java.lang.String lastModified();
public abstract java.lang.String lastModifiedBy();
public abstract java.lang.String[] reviewers();
}
Run Code Online (Sandbox Code Playgroud)
因此,注释类型interface在运行时之前被编译为类型.
在java中,在类型上使用注释类型(@interface)有什么好处interface?
接口是一种用于对象建模的技术,允许对象实现与多种类型相关联的行为(但不是状态).
注释是一种在代码中嵌入类型化元数据的技术; 此元数据旨在供工具(测试框架,代码生成器等)使用,但它们没有语言级语义.您可以将它们视为附加到某些程序元素的结构化/类型化注释,可以通过反射访问它们.
在引擎盖下,注释被实现为接口,这在很大程度上是为了方便起见,但是相似性可能更有助于理解它们的用途.
| 归档时间: |
|
| 查看次数: |
964 次 |
| 最近记录: |