Junior — Middle
Kann Mehrfachvererbung in der Kotlin-Sprache implementiert werden?
sobes.tech KI
Antwort von AI
In Kotlin wird die Mehrfachvererbung von Klassen nicht direkt unterstützt, ähnlich wie in Java. Eine Klasse kann nur von einer Klasse erben.
Allerdings unterstützt Kotlin die Mehrfachvererbung von Schnittstellen, die Standardimplementierungen enthalten können. Dies ermöglicht die Implementierung eines Verhaltens, das der Mehrfachvererbung ähnelt.
Beispiel:
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() // Gibt aus:
// A
// B
}
Daher ist die Mehrfachvererbung von Klassen in Kotlin nicht möglich, aber die Mehrfachvererbung von Schnittstellen mit Implementierungen kann realisiert werden.