![]() | Kotlinスタートブック -新しいAndroidプログラミング 新品価格 |

Kotlinだとinterfaceにデフォルトの実装ができる
そんなinterfaceで同名の関数がある複数のインフェースを実装すると
どうなるかって話
・コード
そのまま利用するとコンパイルエラーになる
なのでoverrideで関数上書きする必要があり
interfaceの実装を呼ぶ場合は明示的に指定する必要がる
interface Foo2 {
fun execute() {
println("Foo")
}
}
interface Bar2 {
fun execute() {
println("Bar")
}
}
class FooBar2 : Bar2, Foo2 {
override fun execute() {
super<Bar2>.execute()
}
}
fun main(args : Array<String>) {
val fb = FooBar2()
fb.execute()
}
Kotlin難しいですね(・ェ・`)
タグ:Kotlin