美文网首页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