Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java注释类参数_Java_Annotations - Fatal编程技术网

Java注释类参数

Java注释类参数,java,annotations,Java,Annotations,你能给我举一个例子,在注释中用Classtype创建参数吗?我找不到哪里是合理的 例如,我为用户输入创建了注释,它有一个验证器,用于验证电子邮件、电话号码。因此,我将创建如下内容: @interface FormField{ Class<? extends IValidator> validator() default EmptyValidator.class; } 现在的注释是 @interface FormField{ ValidationCriteria validator(

你能给我举一个例子,在注释中用
Class
type创建参数吗?我找不到哪里是合理的

例如,我为用户输入创建了注释,它有一个验证器,用于验证电子邮件、电话号码。因此,我将创建如下内容:

@interface FormField{
Class<? extends IValidator> validator() default EmptyValidator.class;
}
现在的注释是

@interface FormField{
ValidationCriteria validator() default ValidationCriteria.FREE_TEXT;
}
这样,我就可以使用
Hashmap
创建工厂,并获得所需的验证器。这对我来说更直观,我不明白为什么我会使用
类型

你能解释一下原因和地点吗?

你能用一个示例代码详细说明一下吗?我添加了一些关于我的挫折感的代码,但还不太清楚。但看起来您正在尝试实现自己的Bean验证,例如,请参阅。我只想看看一些示例,其中类类型参数适用于哪些情况,以及如果您不控制类型的所有不同可能值,或者如果还有其他原因无法使用枚举,如何使用它。
@interface FormField{
ValidationCriteria validator() default ValidationCriteria.FREE_TEXT;
}