美文网首页Android技术知识程序员
kotlin 基础 Companion Objects 20

kotlin 基础 Companion Objects 20

作者: zidea | 来源:发表于2019-04-09 07:39 被阅读26次
kotlin.jpeg bose-companion-5-803044.jpg

在 kotlin 中没有静态方法和属性,我们想要调用类的方法时候,kotlin给我们提供 componion object。

class EmployeA{
    val name = "zidea"
    companion object Factory{
        fun create(): EmployeA = EmployeA()
    }
}

fun main(args: Array<String>) {
    val zidea = EmployeA.create()
    println(zidea.name)
}
interface Factory<T> {
    fun create():T
}
class EmployeA{
    val name = "zidea"
    companion object:Factory<EmployeA>{
      override fun create(): EmployeA = EmployeA()
    }
}

fun main(args: Array<String>) {
    val zidea = EmployeA.create()
    println(zidea.name)
}

我们可以将 Factory 作为接口拿出来,Factory<T>

在 kotlin 中对 java 进行优化就是将 java 的 class 进行细分为许多不同 class,在 java 每个类有些附加或者说额外的方法是多数场合是不会被用到的。我们需要不断减轻类的负担。去掉一些额外的方法,从而减少内存分配来提高性能。

Learn-a-Programming-Language-Step-24.jpg

相关文章

网友评论

    本文标题:kotlin 基础 Companion Objects 20

    本文链接:https://www.haomeiwen.com/subject/aoduiqtx.html