这是我的注释:
@Target( { ElementType.METHOD } )
@Retention(RetentionPolicy.RUNTIME)
public @interface AuditUpdate
{
Class<?> value();
}
Run Code Online (Sandbox Code Playgroud)
通过这种方式它是好的:
@AuditUpdate(User.class)
void someMethod(){}
Run Code Online (Sandbox Code Playgroud)
但通过这种方式:
private static final Class<?> ENTITY_CLASS = User.class;
@AuditUpdate(ENTITY_CLASS)
void someMethod(){}
Run Code Online (Sandbox Code Playgroud)
我有这个编译错误:
The value for annotation attribute AuditUpdate.value must be a class literal
Run Code Online (Sandbox Code Playgroud)
为什么?那是什么意思?
谢谢.