我有一个界面:
public interface IValidator<E extends IEntity>
{
void validate(final E entity);
}
我想创建一个 ValidatorService 类,如下所示:
public class ValidatorService
{
private List<IValidator<IEntity>> validators;
public void validate(IEntity e)
{
for(IValidator<IEntity> validator : this.validators)
{
//if( instanceof )???
validator.validate(e);
}
}
}
如何确保验证器仅应用于其相应的类(请参见代码中的“???”)?即:如果我们有EntityA类型的实体,那么只有验证器IValidator会被调用?我想我缺乏一些泛型知识..谢谢