如何在 Java 类 上在 Kotlin 中声明扩展静态函数?

How to declare an extension static function in Kotlin on Java Classes?

我想在 kotlin 中声明一个扩展函数,但是在 Java 类 库中,我知道当你在扩展函数中解析 companion 时在 Kotlin 中这样做。 喜欢:

class Food {
   companion object {
       fun foo() = Unit
   }
}

fun Food.Companion.clear(){/*Clear all of objects*/}


现在,有什么方法可以在 Java 类 库中注入 static 函数吗?

在名为 Extensions.kt 的项目中的某处创建一个 class。它应该是这样的:

package com.examplle.something

fun Food.clear(){
    /*Clear all of objects*/
}

fun User.xyz(){
    /*Do task XYZ*/
}

不需要为此制作class。应该是在class.

之外

所以最后我们会得到一个文件Extensions.kt,它只直接包含扩展方法,没有任何class结构。

不,你做不到。该问题已在跟踪中,请查看 this 了解更多信息。