gpt4 book ai didi

java - 如何在 Kotlin 中获取委托(delegate)实例?

转载 作者:行者123 更新时间:2023-11-29 04:28:09 24 4
gpt4 key购买 nike

我想获取委托(delegate)类的实例。

具体来说,在下面的示例中,我想获取传递的 Base - b 的实例,但在尝试使用 b 时出现错误

interface Base {
fun print()
}

class BaseImpl(val x: Int) : Base {
override fun print() { print(x) }
}

open class Derived(b: Base) : Base by b {
override fun print() {
printSomethingBefore()
b.print() // b isn't recognized :(
printSomethingAfter()
}
}

* 示例来源:https://kotlinlang.org/docs/reference/delegation.html

最佳答案

val 前缀声明 b 就可以了:

... Derived(val b: Base) : Base by b ...

关于java - 如何在 Kotlin 中获取委托(delegate)实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45183035/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com