Ответ 1
Незадолго до того, как вы вошли в состояние Beta, команда Kotlin решила добавить определенные ограничения на использование классов data
(см. этот пост), потому что проблем, которые они вызвали в иерархиях классов.
Одно из ограничений заключается в том, что класс data
не должен подтипировать другой класс, допускаются только интерфейсы. Следовательно, классы data
не могут быть получены из sealed class
.
Это была необходимая мера, чтобы избежать дальнейшей отсрочки выпуска 1.0. Некоторые из ограничений, как говорили, были сняты в будущих выпусках, как только проблемные случаи будут тщательно пересмотрены, и будет найдено хорошее дизайнерское решение.