默认情况下,注释在运行时不可用。您需要添加
@Retention(RetentionPolicy.RUNTIME)到注释定义以使其可用于运行时处理。例如:
@Retention(RetentionPolicy.RUNTIME)public @interface Size {
在实践中,还应
Field.isAnnotationPresent在实际尝试从字段中删除注释之前,检查该字段是否确实具有给定的注释。
另外,指定注释所属的元素类型也是一种好习惯
@Target。因此,您的示例将是:
@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.FIELD)public @interface Size {
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)