Ответ
@Embedded в Room позволяет встраивать один объект в другой как составную часть сущности, избегая создания отдельной таблицы. Это упрощает работу с сложными объектами, сохраняя их структуру в БД.
Пример:
data class Address(
val street: String,
val city: String
)
@Entity
data class User(
@PrimaryKey val id: Int,
val name: String,
@Embedded val address: Address
)
В таблице User будут колонки: id, name, street, city. Можно использовать prefix для избежания конфликтов имен. Подходит для композиции объектов, но не для наследования.