gpt4 book ai didi

android - 如何在运行时更改实现

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

我需要从我的客户端代码中调用一些类。现在我有一个列表,然后客户必须检查该列表的实现。使用起来很乱。

object Adapter {
val list = listOf(
A(),
B()
...
)
}

理想情况下,我只会在内存中保留一个实现,但有时我需要在实现之间进行更改。

最佳答案

让你所有的类都实现一个接口(interface)。由于它们都实现了相同的接口(interface),因此您可以将具体实例分配给相同的变量。

 interface IWorker {
fun doWork()
}

然后在 Adapter 类中,您可以设置要使用的实现。
object Adapter {
var worker: IWorker = Default()
}

默认代表您的任何类。
class Default: IWorker {
override fun doWork() {}
}

关于android - 如何在运行时更改实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61178025/

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