Kotlin:无法从对象按需导入

Kotlin: Cannot import-on-demand from object

我正在尝试创建一个库,您可以在其中调用 object 到 "static imports" 的函数(在 Kotlin 中按需导入)。不幸的是,Kotlin 似乎有一个限制,如下所示。

为什么这是一个限制?有什么我可以做的来解决它吗? (我试过将 class 与伴随对象一起使用,在这种情况下,函数甚至无法解析。)

Sparkot 是您的 Kotlin class,如果我理解正确的话。 对象可以从超类型继承东西,例如equals(), hashCode() 每次你* import from 一个对象时都会被import,并且决定这样做会太混乱。

* - 导入仅适用于 Java 对象。

虽然您不能直接从 Kotlin 对象 import package.KotlinObject.*,但您 可以 import package.*。为避免不必要或不明确的导入,只需创建一个新包,在原始 .kt 文件中声明要导入的 类、变量或扩展,然后按需从父包导入。