如何为注释类型编码可选的默认注释值

Posted

技术标签:

【中文标题】如何为注释类型编码可选的默认注释值【英文标题】:How to code optional default annotation value for Annotation TYPE 【发布时间】:2014-12-27 01:29:52 【问题描述】:

根据error-setting-a-default-null-value-for-an-annotations-field

不可能将 null 影响为可选的默认值,这是我的情况

拥有

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE) 
public @interface SubView 
    Class EntityType();
    String[] Listing();

如何编码可选 SubView 属性的默认值?

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface SubTab 
    String name();
    String[] Fields() default ;
    SubView SubView() default ??? ; //this is optional how to code it?

【问题讨论】:

【参考方案1】:

反复试验

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface SubTab 
    String name();
    String[] Fields() default ;
    SubView SubView() default @SubView(Listing=, EntityType=Object.class);

【讨论】:

以上是关于如何为注释类型编码可选的默认注释值的主要内容,如果未能解决你的问题,请参考以下文章