如何组织Kotlin扩展方法

时间:2016-03-25 22:15:51

标签: kotlin kotlin-extension

假设我有一些“MyClass”的扩展方法。 我的问题是,组织/存储这些方法的最佳做法是什么? 它们应该简单地放入“MyClassExtensions”Kotlin文件吗?

我试图将这些方法封装在一个类中,但是在导入类之后我似乎无法弄清楚如何使用/访问扩展方法。

编辑: 为了澄清,我没有要求帮助调用包含扩展方法的文件。我在询问存储/组织此类方法的最佳实践/方法。 IE浏览器。它们应该简单地放入kotlin文件中,还是应该封装在一个类中。我来自Java背景,所以我习惯在课堂上存储东西。

2 个答案:

答案 0 :(得分:9)

就我而言,您应该将它们放入实用程序文件中,就像之前在Java代码库中所做的那样。

但请注意,您不再需要将它们放入课堂。顶级功能是最佳选择。

您可以参考kotlin标准库或某些开源项目,例如anko,这些都是很好的例子。

就我而言,我将一个类的扩展名放在一个文件中,该文件与另一个包中的原始文件具有相同的名称,并使用

@JvmMultifileClass

减少生成的类文件的数量。

答案 1 :(得分:0)

正如我在问题评论中所提到的,Kotlin文档的这一部分很好地解释了它。 https://kotlinlang.org/docs/reference/extensions.html#scope-of-extensions