java custom annotation: make an attribute optional

annotations, java, metaprogramming

Solution

You can provide a default value for the attribute:

@Target(value={ElementType.METHOD, ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
public @interface MyCustomAnnotation  {
    Class<?> myType() default Object.class;
}

Problem

I defined my own custom annotation ``` @Target(value={ElementType.METHOD, ElementType.FIELD}) @Retention(RetentionPolicy.RUNTIME) public @interface MyCustomAnnotation { Class<?> myType(); } ``` how, if at all, can I make the attribute optional

Original source