Kotlin和jvm:对象OR类实例?

时间:2018-01-30 13:42:50

标签: android jvm kotlin

object SampleObject{
   fun getSampleText(): String = "123"
}

class SampleClass {
   fun getSampleText(): String = "123"
}

没有字段,只有方法。

ActivityA启动ActivityB。 在ActivityB,有SampleObject.getSampleText()SampleClass().getSampleText()的来电。然后ActivityB完成。

最佳做法是什么?要使用对象还是使用类实例?

1 个答案:

答案 0 :(得分:1)

如果函数是纯函数(即没有副作用),则在顶层编码。无需在Kotlin中显式创建类/对象。

编译器将生成一个包含方法作为静态方法的类,因此具有与所有静态方法相同的生命周期。

Object包含对其自身构造版本的静态引用,该类具有您的功能。同样,类/方法将在JVM的生命周期中存在