Junior — Middle
Se poate implementa moștenirea multiplă în limbajul Kotlin?
sobes.tech AI
Răspuns de la AI
În Kotlin, moștenirea multiplă a claselor nu este suportată direct, la fel ca în Java. O clasă poate moșteni doar de la o singură clasă.
Cu toate acestea, Kotlin suportă moștenirea multiplă a interfețelor, care pot conține implementări implicite. Acest lucru permite implementarea unui comportament similar cu moștenirea multiplă.
Exemplu:
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() // Va afișa:
// A
// B
}
Prin urmare, moștenirea multiplă a claselor în Kotlin nu este posibilă, dar moștenirea multiplă a interfețelor cu implementări este realizabilă.