Java中注释字段的默认空值

问题描述 投票:0回答:1

我正在创建自定义注释

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface MyFramework {

    public Integer index() default null; // Compiler complains here

}

编译器抱怨不允许使用null。我不想使索引字段原始类型为int,因为这没有意义。是否可以为注释字段设置默认的null值?

Error setting a default null value for an annotation's field的答案提到了Class类型,因此解决方案有效,但不适用于IntegerDouble等。>

我正在创建自定义批注@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD)public @interface MyFramework {public Integer index()默认为null; //编译器在这里抱怨...

java annotations
1个回答
0
投票

您不能使用null作为默认值。 Java语言规范

© www.soinside.com 2019 - 2024. All rights reserved.