Может ли Sealed Class наследовать Sealed Class

«Может ли Sealed Class наследовать Sealed Class» — вопрос из категории Kotlin, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, sealed class может наследовать другую sealed class, но с ограничениями.

sealed class Parent
sealed class Child : Parent() // Корректно - наследник тоже sealed

class GrandChild : Child() // Ошибка! Нельзя наследовать sealed class вне его объявления

Ключевые моменты:

  1. Наследник sealed class должен быть объявлен в том же файле или быть вложенным классом
  2. Если наследник тоже sealed, его можно объявить в любом месте
  3. Обычные классы не могут наследовать sealed class вне его объявления

Это позволяет создавать иерархии sealed классов с контролируемым наследованием.