У меня есть абстрактный класс, как следующее:проекции не допускается непосредственных подтипов надтипа
abstract class AbstractSync<out C : Configuration<*>> : ISync {
internal abstract val configuration: C
...
}
Я хочу, чтобы другой абстрактный класс, который наследуется от этого:
abstract class CascadedSync : AbstractSync {}
Класс CascadedSync должен не изменять общий параметр C, он должен, по сути, реализовать только один метод ISync и ничего больше.
Я пытаюсь использовать различные синтаксисы для достижения этой, казалось бы, простой задачи. В Java это будет выглядеть так же, как это:
abstract class CascadedSync extends AbstractSync {
}
Переводя его Котлин с помощью IntelliJ производит это:
abstract class CascadedSync : AbstractSync<*>()
Но в то же время дает следующее сообщение об ошибке:
выступы не допускаются для немедленных подтипов супертипа
Каков правильный синтаксис?