У меня есть следующий класс, который прекрасно компилируется
class MyClass<T> {
MyClass<? extends Number> foo() {
return new MyClass<Integer>();
}
}
, но когда я изменяю свой тип возврата на этот
class MyClass<T> {
<R extends Number> MyClass<R> foo() {
return new MyClass<Integer>();
}
}
, я получаю сообщение об ошибке в своем операторе возврата, говоря
incompatible types: MyClass<java.lang.Integer> cannot be converted to MyClass<R>