这个问题来自于构造函数的类型javax.validation.ConstraintViolationException
。它接受Set<ConstraintViolation<?>>
作为参数。
虽然很容易获得一组 ConstraintViolation<X>,其中 X 是一个具体类型,但似乎不可能从任何类型良好的 API 获得一组“ConstraintViolation<?>”。如果不使用一些令人费解的演员表,就不可能将前者转换为后者。(投射到Set<? extends ConstraintViolation<?>>
然后到Set<ConstraintViolation<?>>
。)
那么你们认为 API 错了还是我错了(为什么)?