Sobes.tech
Назад к вопросам
Junior — Middle
79

Можно ли объявить data class с реализацией интерфейса в языке программирования?

Компании, где спрашивали
IBS

Ответ от нейросети

sobes.tech AI

В языке Kotlin можно объявить data class, который реализует один или несколько интерфейсов. Это часто используется для создания удобных DTO с дополнительным поведением, определённым в интерфейсах.

Пример:

interface Printable {
    fun print()
}

data class User(val name: String, val age: Int) : Printable {
    override fun print() {
        println("User(name=$name, age=$age)")
    }
}

fun main() {
    val user = User("Alice", 30)
    user.print()  // Выведет: User(name=Alice, age=30)
}

Таким образом, data class может реализовывать интерфейсы без ограничений.