如何在 Kotlin 中定义静态扩展方法?这甚至可能吗?我目前有一个扩展方法,如下所示。
public fun Uber.doMagic(context: Context) { // ... }
可以在实例上调用上述扩展。
uberInstance.doMagic(context) // Instance method
但是我如何使它成为如下所示的静态方法。
Uber.doMagic(context) // Static or class method
要实现Uber.doMagic(context),可以对伴生对象编写扩展(需要Uber伴生对象声明):
Uber.doMagic(context)
Uber
class Uber { companion object {} } fun Uber.Companion.doMagic(context: Context) { }