java - 为注释字段设置默认空值时出错

标签 java annotations default

为什么我收到错误“属性值必须是常量”。 null 不是常量吗???

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface SomeInterface {
    Class<? extends Foo> bar() default null;// this doesn't compile
}

最佳答案

试试这个

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface SomeInterface {
    Class bar() default void.class;
}

它不需要一个新类,并且它已经是 Java 中的一个没有任何意义的关键字。

关于java - 为注释字段设置默认空值时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59849354/

相关文章:

java - 如何在Spring Boot Rest模板中使用.pfx证书和密码调用安全的rest api?

java - 如何将这些 servlet 数据创建为 json 格式我尝试过这个东西

java - 生成的源中的 Netbeans 注释

iphone - 从 MapView 添加和删除注释会导致眨眼

android - 没有使用maven将注释处理(生成的)源编译成apk

eclipse - 如何自动导入之前导出的 Eclipse 编辑器首选项?

c++ - SFINAE 上的默认参数值

java - 如何写入文件

java - Hibernate for SQLite 支持 envers 吗?

ruby-on-rails - :default => 0 and :null => false differ for integer fields in migrations? 怎么办