Junior — Middle
Kas on võimalik mitmekordset pärandamist Kotlin keeles?
sobes.tech AI
Vastus AI-lt
Kotlinis otseklasside mitmekordset pärandamist ei toetata, nagu Java-ski. Klass võib pärida ainult ühest klassist.
Kuid, Kotlin toetab mitmekordset liideste pärandamist, mis võivad sisaldada vaikimisi rakendusi. See võimaldab rakendada käitumist, mis sarnaneb mitmekordsele pärandamisele.
Näide:
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() // Väljund:
// A
// B
}
Seega, Kotlinis klasside mitmekordne pärandamine ei ole võimalik, kuid liideste mitmekordne pärandamine koos rakendustega on teostatav.