我有以下代码。我需要允许仅对ICommand接口的类实例使用此批注(CommandName)。我该怎么办?
@Retention(RetentionPolicy.RUNTIME) // Make this annotation accessible at runtime via reflection.
@Target({ElementType.TYPE}) // This annotation can only be applied to class methods.
public @interface CommandName {
String value();
}
答案 0 :(得分:0)
在编译时,你不能那样做。在运行时,只需检查类 - 它们是由CommandName注释注释的 - 如果它们正在实现ICommand接口。