Почему закрытый модификатор нельзя использовать с объектом в Kotlin? - PullRequest
0 голосов
/ 21 марта 2020

Почему sealed class User компилируется успешно, но sealed object User выдает ошибку компиляции?

Я просмотрел Kotlin документов, но ничего не получил. Я немного играю с Kotlin и просто хотел узнать причину этого?

1 Ответ

4 голосов
/ 21 марта 2020

sealed классы должны быть открытыми, однако все объекты final: sealed классы имеют определенное количество подклассов (внутри файла, где объявлен закрытый класс), но объекты являются одиночными, поэтому они не могут иметь подклассов. Следовательно, объявление sealed object не имеет смысла и не может быть скомпилировано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...