Зачем нужен data object
Вопрос
Зачем нужен data object и чем он лучше обычного object в sealed-иерархии?
Попробуйте сами
Ответьте про себя или вслух, потом откройте ответ и сверьтесь.
Показать ответ и разбор
Коротко
Ответ
data object генерирует читаемый toString (Loading вместо Loading@1a2b3c) и equals/hashCode, которые корректны даже если синглтон каким-то образом создан второй раз (сериализация, рефлексия). Стабилен с Kotlin 1.9, рекомендуется для объектов-вариантов sealed-иерархий.
Разбор
data object генерирует читаемый toString (Loading вместо Loading@1a2b3c) и equals/hashCode, которые корректны даже если синглтон каким-то образом создан второй раз (сериализация, рефлексия). Стабилен с Kotlin 1.9, рекомендуется для объектов-вариантов sealed-иерархий.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.