限制使用java注释

时间:2017-09-28 18:20:45

标签: java annotations

有一种方法可以限制类中java注释的使用次数吗?

@Target(ElementType.FIELD)
@Inherited
public @interface MyAnnotation {
    //
}

我想要的是什么:

public class MyClass{

    @MyAnnotation
    private Object obj1;

    private Object obj2;
}

我想阻止的是什么:

public class MyClass{

    @MyAnnotation
    private Object obj1;

    @MyAnnotation //should throw an error because already used on another field
    private Object obj2;
}

谢谢。

1 个答案:

答案 0 :(得分:-1)

注释上有@Target(ElementType.FIELD)后,就无法对可以应用注释的字段数执行编译时检查。当然,您可以在处理过程中对其进行检查,但这不是编译时检查。