Sobes.tech
Junior — Middle

É possível implementar herança múltipla na linguagem Kotlin?

sobes.tech IA

Resposta da IA

No Kotlin, a herança múltipla de classes não é suportada diretamente, assim como em Java. Uma classe só pode herdar de uma classe.

No entanto, o Kotlin suporta herança múltipla de interfaces, que podem conter implementações padrão. Isso permite implementar um comportamento semelhante à herança múltipla.

Exemplo:

interface A {
    fun foo() { println("A") }
}

interface B {
    fun foo() { println("B") }
}

class C : A, B {
    override fun foo() {
        super<A>.foo()
        super<B>.foo()
    }
}

fun main() {
    val c = C()
    c.foo() // Vai imprimir:
             // A
             // B
}

Portanto, a herança múltipla de classes em Kotlin não é possível, mas é possível implementar herança múltipla de interfaces com implementações.