Kotlin では、「呼び出し側でクラスを拡張する必要がある可能性がある特性」を作成する可能性があります。
class Bar {}
trait T1 : Bar {}
class Foo : Bar, T1, T2, T3 {}
class Wrong : T1, T2 //error: Wrong should extend Bar
この構造を適用できるフローは想像できません。なぜそれが必要なのか誰か教えてもらえますか?
Kotlin では、「呼び出し側でクラスを拡張する必要がある可能性がある特性」を作成する可能性があります。
class Bar {}
trait T1 : Bar {}
class Foo : Bar, T1, T2, T3 {}
class Wrong : T1, T2 //error: Wrong should extend Bar
この構造を適用できるフローは想像できません。なぜそれが必要なのか誰か教えてもらえますか?