В некоторых есть id, который хочется достать. Первое что в пришло в голову это такой экстеншен. Есть идеи как можно написать красивше?)
fun BigSealedClass.getPossibleId(): String? {
return when (this) {
is UserDataClass -> this.id
is GroupDataClass -> this.id
is VideoDataClass -> this.id
else -> null
}
}
можешь сделать интерфейс, прицепить к базовому классу и заоверрайдить поле/метод в нужных дочерних
ну можно сделать более сложную структуру наследования - сделать еще один общий sealed class
Обсуждают сегодня