abstract class Human
class Alien : Human()
abstract class Foo<T>() {
abstract fun foo(): T
}
class Too<Human>() : Foo<Human>() {
override fun foo(): Human {
return Alien()
}
}
Class Too () является подклассом абстрактного класса Foo (), который дает T тип Human. Я хотел бы иметь возможность вернуть подкласс Human () (Alien () в этом примере) из foo (), однако я получаю ошибку несоответствия типов. Есть ли способ преодолеть это?