Сообщение об ошибке: параметр типа E в SchedulableInserter имеет несовместимые значения: Incident, Assignment
Так что в основном у меня есть абстрактный класс Schedulable.Также у меня есть два класса Incident (единичное событие, например отметка времени) и класс Assignment (в основном, инцидент, но с продолжительностью). У меня есть MainActivity, куда я хочу вставить экземпляры в SQLiteDB.Я хочу иметь разные методы вставки для каждого подкласса Schedulable, чтобы легко обрабатывать различия между ними.
// SchedulableInserter.kt
interface SchedulableInserter<E> where E : Schedulable{
fun onInsertSchedulable(item:E)
}
// MainActivity.kt
class MainActivity() : AppCompatActivity(),
NavigationView.OnNavigationItemSelectedListener,
SchedulableInserter<Incident>, SchedulableInserter<Assignment> {
/* ^ ^
| |
Sadly Kotlin says:
Type parameter E of 'SchedulableInserter' has inconsistent values:
Incident, Assignment
A Supertype apperars twice
*/
}
Я имею в виду, что я мог бы дифференцироваться в методе, если бы я связал SchedulerInserter с Schedulable, но я был бы признателен за то, чтобы этого не делать.