我得到一个错误::: Bound不匹配:MyClass1类型不是边界参数<T extends Comparator<T>> of the type Person<T>
的有效替代品
import java.util.Comparator;
public class Test
{
public static void main(String[] args)
{
Person<MyClass1> person2 = new Person<>(); // Bound mismatch: The type MyClass1 is not a valid substitute for the bounded parameter <T extends Comparator<T>> of the type Person<T>
}
}
class MyClass1<T extends Comparator<T>> implements Comparator<T>
{
@Override
public int compare(T o1, T o2)
{
return 0;
}
}
class Person<T extends Comparator<T>>
{
}
答案 0 :(得分:2)
要求是MyClass1
必须与T extends Comparator<T>
匹配。
在这种情况下,其声明应为class MyClass1 extends Comparator<MyClass1>
。