gpt4 book ai didi

generics - kotlin 中的递归类型参数

转载 作者:行者123 更新时间:2023-12-02 19:30:16 25 4
gpt4 key购买 nike

我想用 Kotlin 写类似的东西。

open class View<P> where P:Presenter<out _this_class_> {
val presenter: P = ...
}

open class Presenter<V> where V: View<out _this_class_> {
val view: V = ...
}

我怎样才能正确地做到这一点?

最佳答案

标准方式(称为 F-bounded polymorphism )是

open class View<V: View<V, P>, P: Presenter<out V>> { ... }

根据具体情况,将 out 放在此处的其他位置可能更有意义:

open class View<out V: View<V, P>, out P: Presenter<V>> { ... }

关于generics - kotlin 中的递归类型参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54304896/

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