5
私は、Javaで、Kotlin委譲クラスを拡張し、次のエラーを取得しようとしている:Javaで、Kotlin委任クラスを拡張できますか?
Cannot inherit from final 'Derived'
は、以下のコードを参照してください。
私がやっていることは、クラスのメソッドを飾ることです。
コトルが最終的にDerived
を定義した理由は何ですか? Derived
は最終的なものにならないので、私はそれを継承できますか?
のJava:
new Derived(new BaseImpl(10)) { // Getting the error on this line: `Cannot inherit from final 'Derived'`
};
Kotlin:ここから
interface Base {
fun print()
}
class BaseImpl(val x: Int) : Base {
override fun print() { print(x) }
}
class Derived(b: Base) : Base by b
*例:https://kotlinlang.org/docs/reference/delegation.html